Android - 带有Preference活动的DataBinding

j2e*_*nue 17 xml android preferenceactivity android-databinding

我在xml中设置数据绑定但是当我转到首选项活动以实际设置绑定时我不能.数据绑定xml所在的文件名为preference.xml,因此我假设应该有一个名为PreferencesBinding的生成类,而不是.它应该不是自动生成的吗?另外我在preferenceActivity.java中的代码不会编译以下内容:

    Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         PreferencesBinding binding = DataBindingUtil..... //what do put here ??? this is preferenceactivity not Activity

         Admin user = new Admin(true);
         binding.setUser(user);//this what i want to do

         addPreferencesFromResource(R.xml.preferences);//this would not be necessary if i can get dataBinding to work
//..rest of code not important
       }
Run Code Online (Sandbox Code Playgroud)

我开始认为数据绑定不适用于偏好屏幕,任何人都可以帮忙吗?

如果neseccary看起来像这样的preferences.xml文件:

 <?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:customNS="http://schemas.android.com/apk/res/mypackage"
    >
    <data>
        <variable name="admin" type="mypackage.Administration"/>
    </data>

<PreferenceScreen>

<!-- ....bunch of preferences ... -->
</PreferenceScreen>
</layout
Run Code Online (Sandbox Code Playgroud)

And*_*dov 7

目前不支持 PreferenceScreen 的数据绑定。这是这个 xml 不是布局 xml 的原因。此外,首选项元素根本没有扩展 View 或 ViewGroup 。也许这个功能会在未来推出,但不是现在。只有布局文件可以使用数据绑定。


小智 5

仍然不支持 PreferenceScreen 的数据绑定。Android开发确实很不一致。谷歌告诉我们使用这些新的更好的技术,但随后你就会遇到困难,不得不用旧的方式来做。你还不如一直坚持老方法。