在一个活动中可以绑定并访问myView
,它是布局中的子视图,如下所示:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActivityExampleBinding views = DataBindingUtil.setContentView(this, R.layout.activity_example);
views.myView.doSomething();
}
如何在片段中执行此操作?我可以像这样返回膨胀的根视图:
@Override
public @Nullable View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
ViewDataBinding views = DataBindingUtil.inflate(inflater, R.layout.fragment_example, container,false);
return views.getRoot();
}
但是如何访问布局中的子视图?
您当前的代码很好,如果您想坚持使用,只需将view
变量更改为FragmentExampleBinding
(与您的fragment_example
布局资源名称匹配)。
或者,使用FragmentExampleBinding.inflate()
,因为您不需要传递布局资源ID。