要在Android中使用原始的MutableLiveData进行数据绑定,可以按照以下步骤进行操作:
implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
在这个例子中,viewModel
是一个包含MutableLiveData
对象的ViewModel。
private MyViewModel viewModel;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 实例化ViewModel
viewModel = new ViewModelProvider(this).get(MyViewModel.class);
// 将ViewModel与布局文件进行绑定
ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
binding.setViewModel(viewModel);
binding.setLifecycleOwner(this);
}
public class MyViewModel extends ViewModel {
private MutableLiveData text = new MutableLiveData<>();
public MutableLiveData getText() {
return text;
}
public void setText(String value) {
text.setValue(value);
}
}
viewModel.setText("Hello World");
这将更新LiveData对象的值,并自动将新的值绑定到TextView上。
通过上述步骤,你就可以使用原始的MutableLiveData进行数据绑定了。