**
DataBinding
**
先写好简单的普通test
public class MainActivity extends AppCompatActivity {
TextView textView;
Button button;
MyViewModel myViewModel;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView=findViewById(R.id.textView2);
button=findViewById(R.id.button1);
myViewModel=ViewModelProviders.of(this).get(MyViewModel.class);
myViewModel.getNumber().observe(this, new Observer<Integer>() {
@Override
public void onChanged(Integer integer) {
textView.setText(String.valueOf(integer));
}
});
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
myViewModel.add();
}
});
}
---------------------------------------------------------------------------
public class MyViewModel extends ViewModel {
private MutableLiveData<Integer> number;
public MutableLiveData<Integer> getNumber(){
if(number==null){
number=new MutableLiveData<>();
number.setValue(0);
}
return number ;
}
public void add(){
number.setValue(number.getValue()+1);
}
}
使用DataBinding
1.
gradle添加
dataBinding{
enabled true
}
2.
actitiy引入![在这里插入图片描述](https://img-blog.csdnimg.cn/20200304115556266.png)
3.
MainActivity配置,省去了
这样省去了声明控件步骤