android.preference.ListPreference#getEntryValues ( )源码实例Demo

下面列出了android.preference.ListPreference#getEntryValues ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

/**
 * set lowBatPollInterval to normal poll interval at least
 * and adapt the selectable values
 *
 * @param pollIntervalPref
 * @param lowBatPollIntervalPref
 */
private void setMinBatPollIntervall(ListPreference pollIntervalPref, ListPreference lowBatPollIntervalPref) {
    final String currentValue = lowBatPollIntervalPref.getValue();
    final int pollIntervalPos = (pollIntervalPref.findIndexOfValue(pollIntervalPref.getValue()) >= 0?pollIntervalPref.findIndexOfValue(pollIntervalPref.getValue()):0),
            length = pollIntervalPref.getEntries().length;

    CharSequence[] entries = new String[length - pollIntervalPos],
            entryValues = new String[length - pollIntervalPos];

    // generate temp Entries and EntryValues
    for(int i = pollIntervalPos; i < length; i++) {
        entries[i - pollIntervalPos] = pollIntervalPref.getEntries()[i];
        entryValues[i - pollIntervalPos] = pollIntervalPref.getEntryValues()[i];
    }
    lowBatPollIntervalPref.setEntries(entries);
    lowBatPollIntervalPref.setEntryValues(entryValues);

    // and set the correct one
    if (lowBatPollIntervalPref.findIndexOfValue(currentValue) == -1) {
        lowBatPollIntervalPref.setValueIndex(0);
    }
}
 
源代码2 项目: AcDisplay   文件: KeyguardSettings.java
@Override
public void updateSummary(@NonNull Preference preference,
                          @NonNull Config.Option option,
                          @NonNull Object value) {
    ListPreference cbp = (ListPreference) preference;
    final CharSequence valueStr = Integer.toString((Integer) value);
    final CharSequence[] values = cbp.getEntryValues();
    final int length = values.length;
    for (int i = 0; i < length; i++) {
        if (valueStr.equals(values[i])) {
            cbp.setSummary(cbp.getEntries()[i]);
            break;
        }
    }

}
 
源代码3 项目: HeadsUp   文件: KeyguardSettings.java
@Override
public void updateSummary(@NonNull Preference preference,
                          @NonNull Config.Option option,
                          @NonNull Object value) {
    String theme = (String) value;
    ListPreference cbp = (ListPreference) preference;

    CharSequence[] themes = cbp.getEntryValues();
    for (int i = 0; i < themes.length; i++) {
        if (TextUtils.equals(theme, themes[i])) {
            cbp.setSummary(getString(
                    R.string.settings_theme_summary,
                    cbp.getEntries()[i]));
            break;
        }
    }
}
 
源代码4 项目: Plumble   文件: Preferences.java
private static void configureAudioPreferences(final PreferenceScreen screen) {
    ListPreference inputPreference = (ListPreference) screen.findPreference(Settings.PREF_INPUT_METHOD);
    inputPreference.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
        @Override
        public boolean onPreferenceChange(Preference preference, Object newValue) {
            updateAudioDependents(screen, (String) newValue);
            return true;
        }
    });

    // Scan each bitrate and determine if the device supports it
    ListPreference inputQualityPreference = (ListPreference) screen.findPreference(Settings.PREF_INPUT_RATE);
    String[] bitrateNames = new String[inputQualityPreference.getEntryValues().length];
    for(int x=0;x<bitrateNames.length;x++) {
        int bitrate = Integer.parseInt(inputQualityPreference.getEntryValues()[x].toString());
        boolean supported = AudioRecord.getMinBufferSize(bitrate, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT) > 0;
        bitrateNames[x] = bitrate+"Hz" + (supported ? "" : " (unsupported)");
    }
    inputQualityPreference.setEntries(bitrateNames);

    updateAudioDependents(screen, inputPreference.getValue());
}
 
源代码5 项目: V2EX   文件: GeneralPreferenceFragment.java
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getPreferenceManager().setSharedPreferencesName(
            Config.getConfig(ConfigRefEnum.CONFIG_PREFERENCE_SETTING_FILE));
    addPreferencesFromResource(R.xml.pref_general);

    ListPreference themePreference = (ListPreference) findPreference(
            getString(R.string.key_theme));
    themePreference.setSummary(Config.getConfig(ConfigRefEnum.CONFIG_THEME));

    ListPreference dateFormatPreference = (ListPreference)findPreference(
            getString(R.string.key_date_format));
    String[] dateEntries = new String[dateFormatPreference.getEntryValues().length];
    int i = 0;
    for (CharSequence s:dateFormatPreference.getEntryValues()){
        String date = TimeUtil.getDateNow(String.valueOf(s));
        dateEntries[i++] = date;
    }
    dateFormatPreference.setEntries(dateEntries);
    dateFormatPreference.setSummary(TimeUtil.getDateNow(Config.getConfig(
            ConfigRefEnum.CONFIG_DATE_FORMAT)));

    ListPreference localePreference = (ListPreference) findPreference(getString(R.string.key_local));
    String[] localesEntryValue = new String[Config.LOCAL_LIST.size()];
    String[] localesEntries= new String[Config.LOCAL_LIST.size()];
    int index = 0;
    for (Locale locale:Config.LOCAL_LIST){
        localesEntryValue[index] = locale.toString();
        localesEntries[index++] = locale.getDisplayCountry();
    }
    localePreference.setDefaultValue(localesEntryValue[0]);
    localePreference.setEntryValues(localesEntryValue);
    localePreference.setEntries(localesEntries);

    Preference clearCachePreference = findPreference(getString(R.string.clear_cache));
    clearCachePreference.setOnPreferenceClickListener(this::clearCache);
    clearCachePreference.setSummary("缓存大小 12 MB");
    findPreference(getString(R.string.key_home_tabs)).setOnPreferenceClickListener(preference -> {
        CustomTabActivity.start(getActivity());
        return false;
    });
}