自定义 EditTextPreference

hay*_*ssi 5 android preferences edittextpreference

我想自定义我的EditTextPreference,所以我TextView在我的EditTextPreference.

这是我的代码:

<EditTextPreference
   android:key="alert_planed_edittext_preference"
   android:title="@string/alert_planed_edittext_preference"
   android:summary="@string/alert_planed_summary_edittext_preference"
   android:dialogTitle="@string/alert_planed_dialog_title_edittext_preference" />
Run Code Online (Sandbox Code Playgroud)

这就是我在我的应用程序中得到的:

在此处输入图片说明

我想自定义我的 EditTextPreference,这就是我想要的:

在此处输入图片说明

我想在右边添加数字,我可以这样做吗?

当我点击我得到这个对话框:

在此处输入图片说明

我希望用户只能选择数字,我该怎么做?

编辑:我找到了第二个问题的解决方案:

<EditTextPreference
                android:key="alert_planed_edittext_preference"
                android:title="@string/alert_planed_edittext_preference"
                android:summary="@string/alert_planed_summary_edittext_preference"
                android:dialogTitle="@string/alert_planed_dialog_title_edittext_preference"
                android:numeric="integer" />
Run Code Online (Sandbox Code Playgroud)

Goo*_*Goo 4

对于第二个问题,为什么不使用数字选择器而不使用此 edittext ?

示例(来自android.dev例子

和这样的代码:

Public class NumberPickerPreference extends DialogPreference {
    public NumberPickerPreference(Context context, AttributeSet attrs) {
        super(context, attrs);

        setDialogLayoutResource(R.layout.numberpicker_dialog);
        setPositiveButtonText(android.R.string.ok);
        setNegativeButtonText(android.R.string.cancel);

        setDialogIcon(null);
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

关于你的第一个问题,我必须实现一个customPreference。您可以从设置菜单中的IconPreferenceScreen中获取示例。