Can't get Root View from Data Binding after enabling safe-args plugin

允我心安 提交于 2019-12-19 08:12:53

问题


I'm working on an Android app using dataBinding and am currently trying to add the safe-args plugin, but after enabling the plugin, I can no longer get the root view via binding.root - Android Studio gives the error:

Unresolved Reference
None of the following candidates is applicable because of a receiver type mismatch:
* internal val File.root: File defined in kotlin.io

How can I get databinding and safe-args to play nice together?

Note that while the code snippet is in Kotlin I will happily take Java answers. Not as comfortable in Java but I can easily read it and translate it.

I haven't been able to find anyone else with the same problem by Googling the error message and "safe args". I tried first with the classpath listed in the Android docs here: https://developer.android.com/guide/navigation/navigation-pass-data

classpath "androidx.navigation:navigation-safe-args-gradle-plugin:2.1.0"

And then also found a tutorial suggesting I use:

classpath "android.arch.navigation:navigation-safe-args-gradle-plugin:1.0.0-alpha07"

Both had the same issue: binding.root gave an error with the plugin activated

Here is my onCreateView() for my fragment. That return line works properly when safe-args isn't enabled and doesn't work when it is enabled

   override fun onCreateView(
    inflater: LayoutInflater, container: ViewGroup?,
    savedInstanceState: Bundle?
): View? {
    binding = DataBindingUtil.inflate(inflater, R.layout.fragment_encoder, container, false)

    return binding.root
}

Any help solving or understanding this problem is most appreciated!


回答1:


I have the same issue, it's so wired for me, but just rename the layout will work again, try to it :D




回答2:


I have the same issue and at last I tried

File -> Invalid Caches/Restart

It works for me.



来源:https://stackoverflow.com/questions/58516299/cant-get-root-view-from-data-binding-after-enabling-safe-args-plugin

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!