본문 바로가기
프로그래밍/Flutter

[Flutter] List<TextSpan> in ChangeNotifier

by YuminK 2022. 4. 2.

ChangeNotifier 내부에서 데이터를 로드하고 List<TextSpan>에 데이터를 채우는 형태를 가지고

있었는데 해당 데이터를 채우고 NotifyListeners()를 호출해줘도 갱신이 안 되었다. 값은 이미 바뀌어 있는 상태

RichText(
  text: TextSpan(
    style: const TextStyle(
      color: Colors.white,
      fontSize: 18,
    ),
    children: notifier.descDataList, // not working
  ),
)

children: notifier.isQuizNotCorrect() ? notifier.descDataList : null,

이렇게 바꿔주니까 인식이 되기 시작한다.

 

LiveData 개념에서도 특정 Observable 상태인 데이터가 바뀌어야 View를 갱신을 하는데, List<TextSpan>자체는 Observable 데이터가 아닌 걸까? 출력상 정상적으로 나오지만 실제로 출력이 되지 않았다.

 

아무튼, 정상적으로 동작하게 하려면 notifier의 다른 데이터로 처리를 해보자. 

댓글