我正在嘗試在陣列更改時重建串列:
ValueNotifier<List<String>> numbers = ValueNotifier(['123']);
numbers.addListener(() => print(numbers));
numbers.value.add('456');
但是沒有呼叫偵聽器。
uj5u.com熱心網友回復:
你可以在ChangeNotifier和ListMixinmixins 的幫助下做到這一點:
class ListNotifier<T> extends ValueListenable<List<T>> with ChangeNotifier, ListMixin<T> {
final List<T> _list = <T>[];
@override
set length(int newLength) {
_list.length = newLength;
notifyListeners();
}
@override
int get length => _list.length;
@override
T operator [](int index) => _list[index];
@override
void operator []=(int index, T value) {
_list[index] = value;
notifyListeners();
}
@override
void add(T element) {
_list.add(element);
notifyListeners();
}
@override
List<T> get value => _list;
}
順便說一句,我沒有使用每種串列修改方法對其進行測驗,因此最好檢查一下
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/395284.html
上一篇:如何在顫振中鏡像路徑?
