FragmentFirstBinding错误,第一个Fragment XML更改



我在大黄蜂v.2021.1.1中。我的项目中没有任何数据库元素。我在第一个片段中有默认值:

import com.my.app.databinding.FragmentFirstBinding

in:

class FirstFragment : Fragment() {
private var _binding: FragmentFirstBinding? = null
private val binding get() = _binding!!
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View {
_binding = FragmentFirstBinding.inflate(inflater, container, false)
...
return binding.root
}

当我对fragment_first.xml进行更改时,FirstFragment.kt文件会爆炸:在Android Studio中,问题选项卡显示Unsolved reference:FragmentFirstBinding和Variable expected,每次出现都会多次。我一点也不了解Logcat。我找到的唯一纠正方法是从中删除零安全(?(

private var _binding: FragmentFirstBinding? = null

然后把它(问号(加回来。

此外,我在build.gradle文件中看到了将数据绑定设置为true,但当我在启动项目时选择"基本活动"模板时,这并不是默认设置。在build.gradle文件中添加databinding=true是否稳定?

谢天谢地!我相信IDE和Kotlin代码都工作得很好,我是对的。我发现只有当片段文件和相关的XML文件同时运行时才会产生错误。

例如:如果我打开FirstFragment.kt并保持其打开状态,然后打开并编辑fragment_first.xml,那么.kt(Kotlin(文件就会得到错误。

但是,如果我没有打开片段文件,然后更改XML,然后打开片段文件进行编辑,我就不会得到错误。

换句话说,当我对相关的XML文件进行更改,然后打开相关的Kotlin文件时,它可以分析并调整对它必须绑定的XML文件所做的更改。

此外,为了清楚起见,在Android Studio中只打开一个选项卡(一个文件(可能会阻止这种情况的发生。

最新更新