LiveData で Android MVVM アーキテクチャを使用しています。私はこのようなオブジェクトを持っています
public class User {
private String firstName;
private String lastName;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
}
そして、私のビューモデルは次のようになります
public class InfoViewModel extends AndroidViewModel {
MutableLiveData<User> user = new MutableLiveData<>();
public InfoViewModel(@NonNull Application application) {
super(application);
User user = new User();
user.setFirstName("Alireza");
user.setLastName("Ahmadi");
this.user.setValue(user);
}
public LiveData<User> getUser(){
return user;
}
public void change(){
user.getValue().setFirstName(user.getValue().getFirstName() + " A ");
}
}
ユーザー オブジェクトの一部のフィールド変更オブザーバーがいつ通知を受けるかを確認するにはどうすればよいですか? ところで、このデータを別のオブジェクトに保持し、ViewModel で Strings のような主要な値を使用しないことが重要です。