Android偏好微调器

时间:2014-07-01 10:37:23

标签: android spinner android-preferences

我该如何构建这样的东西?我想在Preferences Activity中打开一个对话框,当用户点击相应的首选项时,用户可以通过微调器更改数字。

Screenshots from the Android Messaging app's settings. Selecting an item defined by a Preference opens an interface to change the setting.

我从Android Developer Tools获得了截图,但我找不到一些示例代码。

2 个答案:

答案 0 :(得分:2)

我开发了一个自定义首选项,可以找到here

XML代码:

<com.vanniktech.vntnumberpickerpreference.VNTNumberPickerPreference
    android:defaultValue="@integer/font_size_default_value"
    android:key="preference_font_size"
    android:title="@string/font_size"
    app:vnt_maxValue="@integer/font_size_max_value"
    app:vnt_minValue="@integer/font_size_min_value" />

Gradle包括:

compile 'com.vanniktech:vntnumberpickerpreference:1.0.0'

答案 1 :(得分:0)

在首选项的事件处理程序中启动Spinner / picker:

final EditTextPreference msgLimitPref = (EditTextPreference)
                                 findPreference("prefMsgLimit");
                         msgLimitPref.setOnPreferenceClickListener(new
                                 OnPreferenceClickListener() {
                                 @Override
                                public boolean onPreferenceClick(Preference preference) {
                                     msgLimitPref.getDialog().dismiss();
                                   //launch spinner/numberpicker/activity/dialog here
                                 return true;
                                 }
                                 });