情况:所以我正在使用ncapdevi's FragNav Library构建一个应用程序来帮助我浏览我的片段。
我有一个MainActivity来托管我的三个片段。这三个片段扩展了BaseFragment()
(遵循FragNav app示例),扩展了Fragment()
。我的一个片段我想成为一个设置页面,我找到了一个教程online here,它展示了如何使用PreferenceFragmentCompat
制作设置页面。
问题:教程的片段扩展了PreferenceFragmentCompat
。我的扩展BaseFragment
。我不确定如何解决这个问题,因为我知道你只能在Java / Kotlin中继承一个类。
我确实看到了关于使用Interfaces的建议,但也许有人指出我正确的方向。
任何帮助将不胜感激。
您可能需要创建另一个abstract class BasePreference() : PreferenceFragmentCompat() {}
并重新实现或复制您目前在BaseFragment
为FragNav库提供的内容。
由于PreferenceFragmentCompat
要求您覆盖override fun onCreatePreferences(bundle: Bundle, s: String)
和addPreferencesFromResource(R.xml.app_preferences)
,因此您无法禁用其他用途的偏好。