【发布时间】:2019-02-20 22:14:39
【问题描述】:
我的活动:
class PlayerDetails : AppCompatActivity(), View.OnClickListener {
private lateinit var binding: ActivityPlayerDetailsBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = DataBindingUtil.setContentView(this, R.layout.activity_player_details)
}
我正在尝试了解数据绑定过程是如何工作的,我是这样理解的:
-
private lateinit var binding: ActivityPlayerDetailsBinding实例化ViewDataBinding对象。 -
binding = DataBindingUtil.setContentView(this, R.layout.activity_player_details)分为两部分:-
DataBindingUtil.setContentView(this, R.layout.activity_player_details)将内容视图设置为给定的布局 - 然后它将绑定对象返回给
binding variable(binding = ...),然后可以使用该对象访问布局中的视图。
-
这是描述代码如何工作的准确方式吗?我发现DataBindingUtil.java 的源代码很难理解。主要是因为 setContentView() 被调用,尽管它似乎被分配了 binding = ...。
【问题讨论】:
标签: java android data-binding