重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
今天小编给大家分享一下Android怎么绑定数据的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
成都创新互联的客户来自各行各业,为了共同目标,我们在工作上密切配合,从创业型小企业到企事业单位,感谢他们对我们的要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。专业领域包括成都做网站、成都网站建设、电商网站开发、微信营销、系统平台开发。
1. 基本结构
1.1 JavaBeans对象
public class User { private final String firstName; public User(String firstName) { this.firstName = firstName; } public String getFirstName() { return this.firstName; } }
1.2 布局文件
1.3 Activity
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.main_activity); User user = new User("Test"); binding.setUser(user); }
以上三步完成了基本数据绑定
2. 动态更新
当JavaBean对象的数据发生变化时,View自动更新。
正常的数据源只能做到绑定,想要动态更新,就必须要用Observable的方式存储数据,以下是实现Observable的三种方式。
2.1 Observable 对象
实现android.databinding.Observable或继承其实现类
private static class User extends BaseObservable { private String firstName; @Bindable public String getFirstName() { return this.firstName; } public void setFirstName(String firstName) { this.firstName = firstName; notifyPropertyChanged(BR.firstName); } }
2.2 Observable 字段
基本的数据类型都有相应的Observable类
public final ObservableField
2.3 Observable 集合
ObservableArrayMap
user.put("firstName", "Google");
2.4 引用
无论是对象、字段还是集合,都是以Observable的方式存储数据。接下来就是在布局中引用了。
" />
3. RecyclerView动态绑定
private static class RecyclerViewAdapter extends RecyclerView.Adapter{ private List mModels; public static class BindingHolder extends RecyclerView.ViewHolder { private final ViewDataBinding binding; public BindingHolder(ViewDataBinding binding) { super(binding.getRoot()); this.binding = binding; // 这里可以binding.getRoot().findViewById,然后再onBindViewHolder中绑定事件,目前没有找到更方便的方法 } public ViewDataBinding getBinding() { return binding; } } @Override public BindingHolder onCreateViewHolder(ViewGroup parent, int viewType) { ViewDataBinding binding = DataBindingUtil.inflate( LayoutInflater.from(parent.getContext()), R.layout.list_item, parent, false); BindingHolder holder = new BindingHolder(binding);
以上就是“Android怎么绑定数据”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注创新互联行业资讯频道。