如何更新 ListItem 的字段?
我有以下 POJO 和 ViewModel 类。目前,我正在从 LiveData 对象获取完整列表,然后更新其数据,然后重新设置 LiveData 对象的值,但我认为这不是正确的方法,因为只更新我所拥有的一本书的名称重置完整的 LiveData 对象。
还有其他建议或良好做法以正确的方式进行吗?
public class Book {
private long id;
private String name;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public class BookProvider extends AndroidViewModel {
private final MutableLiveData<List<Book>> booksData;
public BookProvider(@NonNull Application application) {
super(application);
booksData = new MutableLiveData<>();
}
public …Run Code Online (Sandbox Code Playgroud) 我有一个对话框,它从两个文本字段中获取输入并根据单击按钮执行一些任务。为了处理来自这些文本字段的焦点和输入,我创建了FocusNode和TextEditingControllers。
通常,在国家StatefulWidget的,我们在其中我们可以处理Dispose方法ChangeNotifier,但我认为是不能直接在对话框的情况下。
那么,我应该避免处理这些 changeNotifiers 还是在 showDialog() 中匿名构建小部件,我应该创建一个单独的 StateFulWidget 类?