1,在build.gradle中,添加一下代码

android {    ...    dataBinding {        enabled = true    }}

2.在布局文件activity_main.xml中添加一下代码,或者直接点击小灯泡 ,

myViewMdel是绑定的模型

<?xml version="1.0" encoding="utf-8"?>                            ........    

3,viewModel来创建liveData模型

package com.example.binddata;import androidx.lifecycle.MutableLiveData;import androidx.lifecycle.ViewModel;public class MyViewModel extends ViewModel {    //定义绑定变量    private MutableLiveData number;    //获取变量方法    public MutableLiveData getNumber() {        if(number == null){            number = new MutableLiveData<>();            number.setValue(0);        }        return number;    }    //增加    public void add(int n){        number.setValue(number.getValue()+n);    }}

4,如果已经在activity_main.xml中添加了上述代码,则MainActivity.java中,就可以直接使用一下类

MyViewModel myViewModel;    ActivityMainBinding binding;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        binding = DataBindingUtil.setContentView(this,R.layout.activity_main);        myViewModel = ViewModelProviders.of(this).get(MyViewModel.class);        binding.setData(myViewModel);        binding.setLifecycleOwner(this);    }

5,在xml中,直接绑定

        

 

更多相关文章

  1. android应用去掉title bar
  2. 利用Handler定时更新Android(安卓)UI
  3. 搭建 android 代码镜像服务
  4. android源代码下载
  5. [置顶] android orm映射框架(类似hibernate)基本使用
  6. android 单选框
  7. Android(安卓)zxing change orientation to portrait
  8. How To Open An URL In Android’s Web Browser
  9. Android也有beacon了

随机推荐

  1. android 关于资源找不到的问题
  2. Android中用Handle做定时器,显示实时时间
  3. Android(安卓)获取View高度的4种方法
  4. Firefox mobile (android) and orientati
  5. android 利用pull解析xml数据
  6. TabLayout 遇到那些坑
  7. (Android) ContentProvider 实例
  8. Fastjson生成json时Null属性不显示
  9. android JB2连拍降速原理介绍
  10. Android(安卓)jni 编程(参数的传递,成员,方