case KEY_UPDATE_PERIOD: try { Integer updatePeriod = Integer.valueOf(updatePeriodPref.getText()); updatePeriodPref.setSummary(updatePeriod + " ms"); } catch (NumberFormatException e) { updatePeriodPref.setSummary("1000 ms"); updatePeriodPref.setText("1000"); SharedPreferences.Editor editor = sharedPref.edit(); editor.putString(s, "1000"); case KEY_LUX_SENSOR_GAIN: try { Integer gain = Integer.valueOf(sensorGainPref.getText()); sensorGainPref.setSummary(String.valueOf(gain)); } catch (NumberFormatException e) { sensorGainPref.setSummary("1"); sensorGainPref.setText("1"); SharedPreferences.Editor editor = sharedPref.edit(); editor.putString(KEY_LUX_SENSOR_GAIN, "1"); case KEY_HIGH_LIMIT: try { Integer highLimit = Integer.valueOf(higLimitPref.getText()); higLimitPref.setSummary(String.valueOf(highLimit)); } catch (NumberFormatException e) { higLimitPref.setSummary("2000 Lx"); higLimitPref.setText("2000"); SharedPreferences.Editor editor = sharedPref.edit(); editor.putString(KEY_HIGH_LIMIT, "2000");
@Override public void onResume() { super.onResume(); locationPreference.setChecked(sharedPref.getBoolean(KEY_INCLUDE_LOCATION, true)); updatePeriodPref.setSummary(updatePeriodPref.getText() + " ms"); higLimitPref.setSummary(higLimitPref.getText() + " Lx"); sensorTypePreference.setSummary(sensorTypePreference.getEntry()); sensorGainPref.setSummary(sensorGainPref.getText()); getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this); }
return true; }); mPreference.setSummary(currentServer); mPreference.setText(currentServer);
@Override public void setText(String text) { super.setText(text); syncSumary(); }
private void setActionParam1(String newValue) { EditTextPreference param_name = (EditTextPreference) findPreference("ba_action_param1"); if (newValue != null && !newValue.isEmpty()) { param_name.setSummary(newValue); mActionBeacon.setActionParam(newValue); } else { param_name.setSummary(""); mActionBeacon.setActionParam(""); } }
/** * Sets the current value of a setting as the summary, so it's visible without clicking * on the setting to change it. Unless it's not set, in which case the default summary is left untouched. * * @param preference The setting to update. */ private void setValueAsSummary(final Preference preference) { final EditTextPreference editTextPreference = (EditTextPreference) preference; if (editTextPreference.getText() != null) { preference.setSummary(editTextPreference.getText()); } }
@Override public void onCreatePreferences(Bundle bundle, String s) { addPreferencesFromResource(R.xml.main_setting); getPreferenceScreen().setEnabled(false); mCaptchaHideOnLocked = (CheckBoxPreference) findPreference(Settings.SETTING_CAPTCHA_HIDE_ON_LOCKED); mCaptchaOverrideDefaultAction = (CheckBoxPreference) findPreference(Settings.SETTING_CAPTCHA_OVERRIDE_DEFAULT_ACTION); mCaptchaPostCopyAction = (ListPreference) findPreference(Settings.SETTING_CAPTCHA_POST_COPY_ACTION); mCaptchaIdentifyPattern = (EditTextPreference) findPreference(Settings.SETTING_CAPTCHA_IDENTIFY_PATTERN); mCaptchaParsePattern = (EditTextPreference) findPreference(Settings.SETTING_CAPTCHA_PARSE_PATTERN); mSubscribeIdentityPattern = (EditTextPreference) findPreference(Settings.SETTING_SUBSCRIBE_IDENTIFY_PATTERN); mSubscribePriority = findPreference(Settings.SETTING_SUBSCRIBE_PRIORITY); mHideInLauncher = (CheckBoxPreference) findPreference(KEY_HIDE_IN_LAUNCHER); mCaptchaHideOnLocked.setOnPreferenceChangeListener(this::onPreferenceChange); mCaptchaOverrideDefaultAction.setOnPreferenceChangeListener(this::onPreferenceChange); mCaptchaPostCopyAction.setOnPreferenceChangeListener(this::onPreferenceChange); mCaptchaIdentifyPattern.setOnPreferenceChangeListener(this::onPreferenceChange); mCaptchaParsePattern.setOnPreferenceChangeListener(this::onPreferenceChange); mSubscribeIdentityPattern.setOnPreferenceChangeListener(this::onPreferenceChange); mHideInLauncher.setOnPreferenceChangeListener(this::onPreferenceChange); mSubscribePriority.setOnPreferenceChangeListener(this::onPreferenceChange); if (Build.VERSION.SDK_INT > Build.VERSION_CODES.O) { mSubscribePriority.setOnPreferenceClickListener((Preference p) -> { startActivity( new Intent("android.settings.APP_NOTIFICATION_SETTINGS"). putExtra("android.provider.extra.APP_PACKAGE" , Global.NEVOLUTION_PACKAGE_NAME)); return false; }); } new Thread(this::loadSettingsAndUpdateViews).start(); }
@Override protected void onSetInitialValue(boolean restoreValue, Object defaultValue) { super.onSetInitialValue(restoreValue, defaultValue); syncSumary(); }
private String getActionParam1() { EditTextPreference param_name = (EditTextPreference) findPreference("ba_action_param1"); return param_name.getSummary().toString(); }
@Override public void onResume() { super.onResume(); locationPreference.setChecked(sharedPref.getBoolean(KEY_INCLUDE_LOCATION, true)); updatePeriodPref.setSummary(updatePeriodPref.getText() + " ms"); highLimitPref.setSummary(highLimitPref.getText() + " atm"); sensorTypePreference.setSummary(sensorTypePreference.getEntry()); getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this); }
private void setNameText(String newValue) { EditTextPreference name = (EditTextPreference) findPreference("bd_name_info"); if (newValue != null && !newValue.isEmpty()) { name.setSummary(newValue); mActionBeacon.setName(newValue); } else { name.setSummary(getString(R.string.pref_bd_default_name)); mActionBeacon.setName(getString(R.string.pref_bd_default_name)); } }
private void updatePreferences(Preference p) { if (KEY_DIRECTORY_LOCATION.equals(p.getKey())) { String path = getSharedPreferences().getString(KEY_DIRECTORY_LOCATION, ""); p.setSummary(path); } if (p instanceof EditTextPreference) { EditTextPreference editTextPref = (EditTextPreference) p; p.setSummary(editTextPref.getText()); } }
param_name.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) {
case KEY_UPDATE_PERIOD: try { Integer updatePeriod = Integer.valueOf(updatePeriodPref.getText()); if (updatePeriod > 2000 || updatePeriod < 100) { throw new NumberFormatException(); } else { updatePeriodPref.setSummary(String.valueOf(updatePeriod)); updatePeriodPref.setSummary(updatePeriod + " ms"); } catch (NumberFormatException e) { updatePeriodPref.setSummary("1000 ms"); updatePeriodPref.setText("1000"); SharedPreferences.Editor editor = sharedPref.edit(); editor.putString(s, "1000"); case KEY_HIGH_LIMIT: try { Float highLimit = Float.valueOf(highLimitPref.getText()); if (highLimit > 1.1 || highLimit < 0.0) { throw new NumberFormatException(); } else { highLimitPref.setSummary(String.valueOf(highLimit)); highLimitPref.setSummary("1.1 atm"); highLimitPref.setText("1.1"); SharedPreferences.Editor editor = sharedPref.edit(); editor.putString(KEY_HIGH_LIMIT, "1.1");
private void updateViews() { mCaptchaHideOnLocked.setChecked(mSettings.isCaptchaHideOnLocked()); mCaptchaOverrideDefaultAction.setChecked(mSettings.isCaptchaOverrideDefaultAction()); mCaptchaPostCopyAction.setValue(String.valueOf(mSettings.getCaptchaPostCopyAction())); mCaptchaIdentifyPattern.setText(mSettings.getCaptchaIdentifyPattern()); mCaptchaParsePattern.setText(mSettings.getCaptchaParsePattern()); mSubscribeIdentityPattern.setText(mSettings.getSubscribeIdentifyPattern()); if ( Build.VERSION.SDK_INT < Build.VERSION_CODES.O ) ((ListPreference)mSubscribePriority).setValue(String.valueOf(mSettings.getSubscribePriority())); getPreferenceScreen().setEnabled(true); }
private void setMessageText(String newValue) { EditTextPreference msg_name = (EditTextPreference) findPreference("bn_notification_action_message"); if (newValue != null && !newValue.isEmpty()) { msg_name.setSummary(newValue); mActionBeacon.getNotification().setMessage(newValue); } else { msg_name.setSummary(getString(R.string.pref_bn_default_notification_action_message)); mActionBeacon.getNotification().setMessage(getString(R.string.pref_bn_default_notification_action_message)); } }
msg_name.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) {
pUMSpeed.setEntries(R.array.UMSpeed_Metric); pGPSDistance.setEntries(R.array.GPSDistance_Metric); pAltitudeCorrection.setSummary(altcor != 0 ? getString(R.string.pref_AltitudeCorrection_summary_offset) + " = " + Double.valueOf(Math.round(altcor*1000d)/1000d).toString() + " m" : getString(R.string.pref_AltitudeCorrection_summary_not_defined)); pUMSpeed.setEntries(R.array.UMSpeed_Imperial); pGPSDistance.setEntries(R.array.GPSDistance_Imperial); pAltitudeCorrection.setSummary(altcor != 0 ? getString(R.string.pref_AltitudeCorrection_summary_offset) + " = " + Double.valueOf(Math.round(altcor*1000d)/1000d).toString() + " ft" : getString(R.string.pref_AltitudeCorrection_summary_not_defined)); pAltitudeCorrection.setSummary(altcor != 0 ? getString(R.string.pref_AltitudeCorrection_summary_offset) + " = " + Double.valueOf(Math.round(altcor*1000d)/1000d).toString() + " ft" : getString(R.string.pref_AltitudeCorrection_summary_not_defined));
@Override protected void setData() { SwitchPreferenceCompat switch_manage = (SwitchPreferenceCompat) findPreference("bd_switch_active"); switch_manage.setChecked(mActionBeacon.isEnabled()); switch_manage.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { if (newValue instanceof Boolean) { mActionBeacon.setIsEnabled(((Boolean) newValue).booleanValue()); } return true; } }); setNameText(mActionBeacon.getName()); EditTextPreference edit_name = (EditTextPreference) findPreference("bd_name_info"); edit_name.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { if (newValue instanceof String) { setNameText((String) newValue); } return true; } }); Region aRegion = ActionRegion.parseRegion(mActionBeacon); findPreference("bd_uuid_info").setSummary(aRegion.getId1().toString()); findPreference("bd_major_info").setSummary(aRegion.getId2().toString()); findPreference("bd_minor_info").setSummary(aRegion.getId3().toString()); findPreference("bd_bluetooth_address_info").setSummary(aRegion.getBluetoothAddress()); }