gpt4 book ai didi

Android 数据绑定(bind) DatabindingUtil 与绑定(bind)类

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:07:30 26 4
gpt4 key购买 nike

我想知道以下内容之间有什么区别:

binding = DataBindingUtil.inflate(inflater, R.layout.drawer_item_primary, parent, false);

对比

binding = DrawerItemPrimaryBinding.inflate(inflater, parent, false);

有任何性能差异吗?
每个的首选用例是什么?

任何其他信息将不胜感激!

谢谢!

最佳答案

按照 Android Documentation 中的建议使用绑定(bind)类的inflate .

DataBindingUtildocumentation 你可以看到。

inflate

T inflate (LayoutInflater inflater, 
int layoutId,
ViewGroup parent,
boolean attachToParent)

Use this version only if layoutId is unknown in advance. Otherwise, use the generated Binding's inflate method to ensure type-safe inflation.

一种选择是通过 DataBindingUtil 进行膨胀但只有当您没有生成绑定(bind)类时

您已生成绑定(bind)类,请使用该类而不是使用DataBindingUtil

在 Java 中

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
HomeFragmentBinding binding = HomeFragmentBinding.inflate(inflater, container, false);
//set binding variables here
return binding.getRoot();
}

在 Kotlin 中

lateinit var binding: HomeFragmentBinding 
override fun onCreateView(inflater: LayoutInflater?, container: ViewGroup?, savedInstanceState: Bundle?): View? {
binding = HomeFragmentBinding.inflate(inflater, container, false)
return binding.root
}

如果你的布局绑定(bind)类没有生成@See this answer .

关于Android 数据绑定(bind) DatabindingUtil 与绑定(bind)类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51893495/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com