【问题标题】:How make a ListPreference with checkbox如何使用复选框制作 ListPreference
【发布时间】:2010-11-03 08:21:29
【问题描述】:

如何使用checkbox 创建ListPreference? 我知道如何使用ListPreference,但我需要在“重复”首选项的警报应用程序中进行多项选择。

喜欢这个截图:

【问题讨论】:

    标签: android checkbox preference listpreference


    【解决方案1】:

    从 API 11 开始,您可以使用 MultiSelectListPreference

    String[] selections = {"selection1","Selection2"};
    Set<String> selectionSet = new HashSet<String>();
    selectionSet.addAll(Arrays.asList(selections));
    
    MultiSelectListPreference multiSelectPref = new MultiSelectListPreference(this);
            multiSelectPref.setKey("multi_pref");
            multiSelectPref.setTitle("Multi Select List  Preference");
            multiSelectPref.setEntries(selections);
            multiSelectPref.setEntryValues(selections);
            multiSelectPref.setDefaultValue(selectionSet);
            getPreferenceScreen().addPreference(multiSelectPref);
    

    【讨论】:

      【解决方案2】:

      使用,MultiSelectListPreference

      <MultiSelectListPreference
              app:defaultValue="@array/watermark_entries_view"
              app:dialogTitle="Select Watermark Type"
              app:entries="@array/watermark_entries_view"
              app:entryValues="@array/watermark_entries_values"
              app:key="mode_repeat"
              app:summary="Enable Watermark"
              app:title="Watermark" />
      

      【讨论】:

        【解决方案3】:

        该 AFAIK 没有内置偏好。 ListPreference 只能单选。

        不过,您可以通过扩展 DialogPreference 创建自己的自定义 Preference 类。

        【讨论】:

          【解决方案4】:

          对于布尔值,您必须使用 SwitchPreference,如下所示:

            <SwitchPreference
                  android:defaultValue="true"
                  android:key="example_switch"
                  android:summary="@string/pref_description_social_recommendations"
                  android:title="@string/pref_title_social_recommendations" />
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-11-04
            • 1970-01-01
            • 2023-03-03
            • 1970-01-01
            • 1970-01-01
            • 2017-08-01
            相关资源
            最近更新 更多