博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android官方DataBinding(八):Lambda长表达式事件处理
阅读量:7058 次
发布时间:2019-06-28

本文共 2340 字,大约阅读时间需要 7 分钟。

Android官方DataBinding(八):Lambda长表达式事件处理
写一个例子说明Android DataBinding如何实现Lambda长表达样式的事件处理。
从Android的View的onClick入手。
写一个User.java的数据模型:
package zhangphil.test;import android.databinding.BaseObservable;import android.databinding.ObservableField;/** * Created by Phil on 2017/8/17. */public class User extends BaseObservable {    public final ObservableField
content = new ObservableField<>();}

写一个名为Util.java的类,该类定义了一个onMyClick(User u)的事件:

package zhangphil.test;import android.util.Log;/** * Created by Phil on 2017/8/18. */public class Util {    public void onMyClick(User u) {        Log.d("按钮事件", u.content.get() + "");    }}

写activity_main.xml:

注意Util的引入以及事件绑定的符号写法。
测试的MainActivity.java:
package zhangphil.test;import android.databinding.DataBindingUtil;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import zhangphil.test.databinding.ActivityMainBinding;public class MainActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        //setContentView(R.layout.activity_main);        ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);        User user = new User();        binding.setUser(user);        Util util = new Util();        binding.setUtil(util);    }}
代码运行,在button按钮下方输入zhangphil:
点击button按钮后的logcat输出:
08-23 10:31:13.609 17062-17062/zhangphil.test D/按钮事件: zhangphil
附录:
1,《Android官方DataBinding简例(一)》链接:http://blog.csdn.net/zhangphil/article/details/77322530    
2,《Android官方DataBinding(二):动态数据更新notifyPropertyChanged》链接:http://blog.csdn.net/zhangphil/article/details/77328688   
3,《Android官方DataBinding(三):RecyclerView 使用ViewDataBinding更新数据》链接:http://blog.csdn.net/zhangphil/article/details/77367432  
4,《Android官方DataBinding(四):BindingAdapter》链接:http://blog.csdn.net/zhangphil/article/details/77374211 
5,《Android官方DataBinding(五):ObservableMap,ObservableArrayMap》链接:http://blog.csdn.net/zhangphil/article/details/77448933
6,《Android官方DataBinding(六): @= 操作符进行双向绑定》链接:http://blog.csdn.net/zhangphil/article/details/77454045 
7,《Android官方DataBinding(七):BindingMethods与BindingMethod》链接:http://blog.csdn.net/zhangphil/article/details/77479843 
你可能感兴趣的文章
第十一天内容《基础交换十一》
查看>>
android错误收集----Version found are
查看>>
java JPA之EntityManager
查看>>
Apache的Mesos和Google的Kubernetes 有什么区别?
查看>>
微服务实践
查看>>
Felix的几个初步文档
查看>>
1.1版本与1。01版本区别
查看>>
How to disable directory listing for Jetty's We...
查看>>
java生成图片缩略图
查看>>
JAVA中常见对象概念
查看>>
CKEditor 入门
查看>>
快快快!27个提升效率的iOS开源库推荐
查看>>
Ftp服务器文件或文件夹的上传和下载
查看>>
通过PhoneGap在Android上去推送通知
查看>>
四合一简化 WordPress 个人信息,更符合国人使用习惯
查看>>
lucene 原理及代码解析
查看>>
Ubuntu系统进不去
查看>>
我的友情链接
查看>>
对于Mysql大量数据查询速度慢的问题
查看>>
tomcat中的server.xml
查看>>