ViewBinding

2020-10-20  本文已影响0人  努力生活的西鱼
ViewBinding
1. 在module的build.gradle中开启视图绑定
android {

    ...
    
    viewBinding {
        enabled = true
    }

}
2. 在Activity初始化根据XML视图文件生成的ViewBinding类
public class MainActivity extends AppCompatActivity {

    /**
     * ViewBinding
     */
    private ActivityMainBinding activityMainBinding;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        activityMainBinding = ActivityMainBinding.bind(getLayoutInflater()));
        setContentView(activityMainBinding.getRoot());
    }

}
3. 直接使用id对应的控件
activityMainBinding.textView.setText("View");
activityMainBinding.textView2.setText("binding");
activityMainBinding.textView.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Toast.makeText(MainActivity.this, "TextView", Toast.LENGTH_SHORT).show();
    }
});
使用可观察的数据对象
数据类型如下:
修改User类
public class User {


    public final ObservableField<String> name = new ObservableField<>();

    public final ObservableField<String> password = new ObservableField<>();


    public ObservableField<String> getName() {
        return name;
    }

    public ObservableField<String> getPassword() {
        return password;
    }
}
在Activity修改
dataBindingBinding.btn01.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        user.name.set("MENG");
    }
});

可以看到,当我们修改数据的时候,界面的数据会自动改变。

上一篇 下一篇

猜你喜欢

热点阅读