Android View.getTag返回null
我有一个应用程序,在一个组中有两个按钮,就像一个切换按钮。每个按钮在其标记字段中使用数据绑定分配一个静态枚举,如下所示: xmlAndroid View.getTag返回null,android,kotlin,android-view,Android,Kotlin,Android View,我有一个应用程序,在一个组中有两个按钮,就像一个切换按钮。每个按钮在其标记字段中使用数据绑定分配一个静态枚举,如下所示: xml ... 然后在后面的代码中,我试图得到这样的标签: override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { _binding = DataBindingUtil.inflate(infla
...
然后在后面的代码中,我试图得到这样的标签:
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
_binding = DataBindingUtil.inflate(inflater, R.layout.fragment_bottomdialog_sort, container, false)
val button = _binding.root.findViewById<MaterialButton>(R.id.BottomSheetDialog_fromFragmentBottomSheetSort_Sort_ToggleButtonGroup_Ascending)
val order = button.tag.toString()
return _binding.root
}
override fun onCreateView(充气机:布局充气机,容器:ViewGroup?,savedInstanceState:Bundle?):视图?{
_binding=DataBindingUtil.充气(充气器,R.layout.fragment\u bottomdialog\u排序,容器,false)
val button=\u binding.root.findViewById(R.id.BottomSheetDialog\u fromFragmentBottomSheetSort\u Sort\u ToggleButtonGroup\u升序)
val order=button.tag.toString()
return\u binding.root
}
但是,这将返回一个NullPointerException
异常:java.lang.NullPointerException:尝试对空对象引用调用虚拟方法“java.lang.String java.lang.Object.toString()”
有人能解释一下为什么以及如何在代码隐藏中获取标记吗?绑定视图时必须设置当前顺序。 必须像这样生成方法
_binding.serOrder(order :Order)
你们通过物体的地方
您可以在创建时绑定数据,而不使用数据绑定IBG绑定视图时必须设置当前顺序。 必须像这样生成方法
_binding.serOrder(order :Order)
你们通过物体的地方
您可以在创建时将数据绑定到中,而无需使用数据绑定IBG您正在声明类型为
顺序的变量
。实际上,您需要导入类型Order
,以便在布局中使用枚举:
如果要在名称SortOrder
下使用它,而不是在Order
下使用,请添加alias
属性:
您正在声明一个变量排序器
类型为顺序
。实际上,您需要导入类型Order
,以便在布局中使用枚举:
如果要在名称SortOrder
下使用它,而不是在Order
下使用,请添加alias
属性:
它是一个枚举,生成视图时不需要绑定它。这就是枚举的用途为什么不在创建时绑定它?它是一个枚举,我在生成视图时不需要绑定它。这就是枚举的目的为什么不在创建时绑定它?