配置

主moudle->build.gradle->android标签下添加配置(有版本限制)

android{    dataBinding     {        enabled true    }}

Activity

public class MainActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);        User user = new User("2020");        binding.setUser(user);        Presenter presenter = new Presenter();        binding.setPresenter(presenter);    }}

XML

<layout xmlns:android="http://schemas.android.com/apk/res/android">    <data>        <variable            name="presenter"            type="com.example.tinkdan.databing.Presenter" />        <variable            name="user"            type="com.example.tinkdan.databing.User" />    data>    <LinearLayout        android:layout_width="match_parent"        android:layout_height="match_parent"        android:orientation="vertical">        <TextView            android:layout_width="match_parent"            android:layout_height="50dp"            android:gravity="center"            android:onClick="@{presenter.helloByName}"            android:text="@{user.name}" />        <TextView            android:layout_width="match_parent"            android:layout_height="50dp"            android:gravity="center"            android:onClick="@{()->presenter.helloByName(user)}"            android:text="@{user.name}" />        <TextView            android:layout_width="match_parent"            android:layout_height="50dp"            android:gravity="center"            android:onClick="@{(view)->presenter.helloByName(view,user)}"            android:text="@{user.name}" />    LinearLayout>layout>

User

public class User {    private String name;    public User(String name) {        this.name = name;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }}

Presenter

public class Presenter {    public void helloByName(View v) {        Toast.makeText(v.getContext(), "Hello " + "wait()", Toast.LENGTH_SHORT).show();    }    public void helloByName(User user) {        Log.d("2020","Hello " + user.getName());    }    public void helloByName(View v,User user) {        Toast.makeText(v.getContext(), "Hello " + user.getName(), Toast.LENGTH_SHORT).show();    }}

Run

DataBing_第1张图片
这里写图片描述

更多相关文章

  1. android 触摸手指动作放大和缩小图片
  2. Android 调用系统相册选择图片并显示
  3. android 自动更新apk版本
  4. android自带图片资源
  5. Android 图片倒影效果源码
  6. Android如何从服务器获取图片
  7. 修改android 系统设置 android 版本
  8. Android中ListView中显示图片和文本
  9. Android关于图片压缩

随机推荐

  1. 【方案汇总】Android NDK编译时版本异常
  2. 修改android statusbar颜色
  3. 第一讲Android简介与环境搭建
  4. android widget 桌面插件的简单事例讲解
  5. Android中通过typeface设置字体
  6. Android一些学习的小点
  7. Android Service 手机启动服务 监听电话
  8. Android底部菜单栏 仿微博效果
  9. Android平台移植初解
  10. Android显示设备管理以及转屏流程