自定义DialogPreference在首选项屏幕上的样式错误

时间:2018-12-17 13:19:33

标签: android android-preferences

我创建了一个简单的自定义DialogPreference,如下所示:

class PinPreference : DialogPreference {
    constructor(context : Context) : this(context,null)

    constructor(context : Context, attrs: AttributeSet?) : this(context, attrs, 0)

    constructor(context : Context, attrs: AttributeSet?, defStyleRes: Int) : super(context, attrs, defStyleRes)

    override fun getPositiveButtonText(): CharSequence {
        return "OK"
    }

    override fun getNegativeButtonText(): CharSequence {
        return "Cancel"
    }

    override fun getDialogLayoutResource(): Int {
        return R.layout.pin_pref_dialog
    }
}

工作正常,除了在PreferenceCategory中呈现此自定义首选项后看起来不正确。它的标题比所有其他标准首选项都大得多,并且具有分隔符,就像当前的prefs样式未应用到它一样。

另一件事:偏好设置在setPreferencesFromResource(R.xml.prefs, rootKey)内的import androidx.preference.PreferenceFragmentCompat

那有什么问题,我该如何设置自定义条目的样式?

0 个答案:

没有答案