use of android.preference.PreferenceCategory in project Osmand by osmandapp.
the class SettingsMonitoringActivity method createNotificationSection.
private void createNotificationSection(PreferenceScreen grp) {
PreferenceCategory cat;
cat = new PreferenceCategory(this);
cat.setTitle(R.string.shared_string_notifications);
grp.addPreference(cat);
final CheckBoxPreference tripRecording = createCheckBoxPreference(settings.SHOW_TRIP_REC_NOTIFICATION, R.string.trip_rec_notification_settings, R.string.trip_rec_notification_settings_desc);
cat.addPreference(tripRecording);
}
use of android.preference.PreferenceCategory in project Osmand by osmandapp.
the class SettingsNavigationActivity method createUI.
private void createUI() {
addPreferencesFromResource(R.xml.navigation_settings);
PreferenceScreen screen = getPreferenceScreen();
settings = getMyApplication().getSettings();
routerServicePreference = (ListPreference) screen.findPreference(settings.ROUTER_SERVICE.getId());
RouteService[] vls = RouteService.getAvailableRouters(getMyApplication());
String[] entries = new String[vls.length];
for (int i = 0; i < entries.length; i++) {
entries[i] = vls[i].getName();
}
registerListPreference(settings.ROUTER_SERVICE, screen, entries, vls);
registerBooleanPreference(settings.SNAP_TO_ROAD, screen);
Integer[] intValues = new Integer[] { 0, 5, 10, 15, 20, 25, 30, 45, 60, 90 };
entries = new String[intValues.length];
entries[0] = getString(R.string.shared_string_never);
for (int i = 1; i < intValues.length; i++) {
entries[i] = (int) intValues[i] + " " + getString(R.string.int_seconds);
}
registerListPreference(settings.AUTO_FOLLOW_ROUTE, screen, entries, intValues);
autoZoom = screen.findPreference("auto_zoom_map_on_off");
autoZoom.setOnPreferenceClickListener(this);
// keep informing option:
Integer[] keepInformingValues = new Integer[] { 0, 1, 2, 3, 5, 7, 10, 15, 20, 25, 30 };
String[] keepInformingNames = new String[keepInformingValues.length];
keepInformingNames[0] = getString(R.string.keep_informing_never);
for (int i = 1; i < keepInformingValues.length; i++) {
keepInformingNames[i] = keepInformingValues[i] + " " + getString(R.string.int_min);
}
registerListPreference(settings.KEEP_INFORMING, screen, keepInformingNames, keepInformingValues);
SpeedConstants[] speedValues = SpeedConstants.values();
String[] speedNamesVls = new String[speedValues.length];
for (int i = 0; i < speedValues.length; i++) {
speedNamesVls[i] = speedValues[i].toHumanString(this);
}
;
registerListPreference(settings.SPEED_SYSTEM, screen, speedNamesVls, speedValues);
// screen power save option:
Integer[] screenPowerSaveValues = new Integer[] { 0, 5, 10, 15, 20, 30, 45, 60 };
String[] screenPowerSaveNames = new String[screenPowerSaveValues.length];
screenPowerSaveNames[0] = getString(R.string.shared_string_never);
for (int i = 1; i < screenPowerSaveValues.length; i++) {
screenPowerSaveNames[i] = screenPowerSaveValues[i] + " " + getString(R.string.int_seconds);
}
registerListPreference(settings.WAKE_ON_VOICE_INT, screen, screenPowerSaveNames, screenPowerSaveValues);
// registerBooleanPreference(settings.SHOW_ZOOM_BUTTONS_NAVIGATION, screen);
showAlarms = (Preference) screen.findPreference("show_routing_alarms");
showAlarms.setOnPreferenceClickListener(this);
speakAlarms = (Preference) screen.findPreference("speak_routing_alarms");
speakAlarms.setOnPreferenceClickListener(this);
Float[] arrivalValues = new Float[] { 1.5f, 1f, 0.5f, 0.25f };
String[] arrivalNames = new String[] { getString(R.string.arrival_distance_factor_early), getString(R.string.arrival_distance_factor_normally), getString(R.string.arrival_distance_factor_late), getString(R.string.arrival_distance_factor_at_last) };
registerListPreference(settings.ARRIVAL_DISTANCE_FACTOR, screen, arrivalNames, arrivalValues);
// array size should be equal!
Float[] speedLimitsKm = new Float[] { -10f, -7f, -5f, 0f, 5f, 7f, 10f, 15f, 20f };
Float[] speedLimitsMiles = new Float[] { -7f, -5f, -3f, 0f, 3f, 5f, 7f, 10f, 15f };
if (settings.METRIC_SYSTEM.get() == OsmandSettings.MetricsConstants.KILOMETERS_AND_METERS) {
String[] speedNames = new String[speedLimitsKm.length];
for (int i = 0; i < speedLimitsKm.length; i++) {
speedNames[i] = speedLimitsKm[i] + " " + getString(R.string.km_h);
}
registerListPreference(settings.SPEED_LIMIT_EXCEED, screen, speedNames, speedLimitsKm);
registerListPreference(settings.SWITCH_MAP_DIRECTION_TO_COMPASS, screen, speedNames, speedLimitsKm);
} else {
String[] speedNames = new String[speedLimitsKm.length];
for (int i = 0; i < speedNames.length; i++) {
speedNames[i] = speedLimitsMiles[i] + " " + getString(R.string.mile_per_hour);
}
registerListPreference(settings.SPEED_LIMIT_EXCEED, screen, speedNames, speedLimitsKm);
registerListPreference(settings.SWITCH_MAP_DIRECTION_TO_COMPASS, screen, speedNames, speedLimitsKm);
}
PreferenceCategory category = (PreferenceCategory) screen.findPreference("guidance_preferences");
speedLimitExceed = (ListPreference) category.findPreference("speed_limit_exceed");
ApplicationMode mode = getMyApplication().getSettings().getApplicationMode();
if (!mode.isDerivedRoutingFrom(ApplicationMode.CAR)) {
category.removePreference(speedLimitExceed);
}
if (getIntent() != null && getIntent().hasExtra(INTENT_SKIP_DIALOG)) {
setSelectedAppMode(settings.getApplicationMode());
} else {
profileDialog();
}
addVoicePrefs((PreferenceGroup) screen.findPreference("voice"));
}
use of android.preference.PreferenceCategory in project Osmand by osmandapp.
the class SettingsRasterMapsActivity method onCreate.
@Override
public void onCreate(Bundle savedInstanceState) {
((OsmandApplication) getApplication()).applyTheme(this);
super.onCreate(savedInstanceState);
getToolbar().setTitle(R.string.shared_string_online_maps);
PreferenceScreen grp = getPreferenceScreen();
OnPreferenceChangeListener listener = createPreferenceListener();
PreferenceCategory cat = new PreferenceCategory(this);
cat.setTitle(R.string.pref_raster_map);
grp.addPreference(cat);
// present on configure map
// addTileSourcePrefs(listener, cat);
cat.addPreference(createCheckBoxPreference(settings.USE_INTERNET_TO_DOWNLOAD_TILES, R.string.use_internet, R.string.use_internet_to_download_tile));
// int startZoom = 1;
// int endZoom = 18;
// String[] entries = new String[endZoom - startZoom + 1];
// Integer[] intValues = new Integer[endZoom - startZoom + 1];
// for (int i = startZoom; i <= endZoom; i++) {
// entries[i - startZoom] = i + ""; //$NON-NLS-1$
// intValues[i - startZoom] = i ;
// }
// ListPreference lp = createListPreference(settings.LEVEL_TO_SWITCH_VECTOR_RASTER,
// entries, intValues, R.string.level_to_switch_vector_raster, R.string.level_to_switch_vector_raster_descr);
// cat.addPreference(lp);
// present on configure map
// addOverlayPrefs(grp, listener);
}
use of android.preference.PreferenceCategory in project Osmand by osmandapp.
the class SettingsRasterMapsActivity method addOverlayPrefs.
@SuppressWarnings("unused")
private void addOverlayPrefs(PreferenceScreen grp, OnPreferenceChangeListener listener) {
PreferenceCategory cat;
cat = new PreferenceCategory(this);
cat.setTitle(R.string.pref_overlay);
grp.addPreference(cat);
overlayPreference = new ListPreference(this);
overlayPreference.setSummary(R.string.map_overlay_descr);
overlayPreference.setTitle(R.string.map_overlay);
overlayPreference.setOnPreferenceChangeListener(listener);
cat.addPreference(overlayPreference);
underlayPreference = new ListPreference(this);
underlayPreference.setSummary(R.string.map_underlay_descr);
underlayPreference.setTitle(R.string.map_underlay);
underlayPreference.setOnPreferenceChangeListener(listener);
cat.addPreference(underlayPreference);
SeekBarPreference sp = createSeekBarPreference(settings.MAP_OVERLAY_TRANSPARENCY, R.string.overlay_transparency, R.string.overlay_transparency_descr, R.string.modify_transparency, 0, 255);
cat.addPreference(sp);
sp = createSeekBarPreference(settings.MAP_TRANSPARENCY, R.string.map_transparency, R.string.map_transparency_descr, R.string.modify_transparency, 0, 255);
cat.addPreference(sp);
}
use of android.preference.PreferenceCategory in project PhoneProfiles by henrichg.
the class PreferenceFragment method onCreateView.
@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = super.onCreateView(inflater, container, savedInstanceState);
if (v != null) {
// If we need to restore the state after a configuration change
PPApplication.logE("PreferenceFragment.onCreateView", "savedInstanceState=" + savedInstanceState);
PPApplication.logE("PreferenceFragment.onCreateView", "getPreferenceScreen()=" + getPreferenceScreen());
Bundle bundle = this.getArguments();
if ((!bundle.getBoolean(EXTRA_NESTED, false)) && (getPreferenceScreen() != null)) {
// Main fragment will fill the HashMap
PPApplication.logE("PreferenceFragment.onCreateView", "put preferenceScreenHashMap");
ArrayList<Preference> preferences = getAllPreferenceScreen(getPreferenceScreen(), new ArrayList<Preference>());
for (Preference preference : preferences) {
preferenceScreenHashMap.put(getSavedInstanceStateKeyName() + '.' + preference.getKey(), (PreferenceScreen) preference);
}
}
if (savedInstanceState != null) {
if (getPreferenceScreen() == null) {
// Nested fragments will use the HashMap to set their PreferenceScreen
PPApplication.logE("PreferenceFragment.onCreateView", "get screen from preferenceScreenHashMap=" + getSavedInstanceStateKeyName());
PreferenceScreen preferenceScreen = preferenceScreenHashMap.get(getSavedInstanceStateKeyName() + '.' + savedInstanceState.getString(getSavedInstanceStateKeyName()));
PPApplication.logE("PreferenceFragment.onCreateView", "preferenceScreenHashMap.preferenceScreen=" + preferenceScreen);
if (preferenceScreen != null) {
this.setPreferenceScreen(preferenceScreen);
}
}
}
PPApplication.logE("PreferenceFragment.onCreateView", "mPreferenceScreen=" + mPreferenceScreen);
PPApplication.logE("PreferenceFragment.onCreateView", "getPreferenceScreen()=" + getPreferenceScreen());
if (mPreferenceScreen != null && getPreferenceScreen() == null) {
// set PreferenceScreen by clicked nested mPreferenceScreen
super.setPreferenceScreen(mPreferenceScreen);
PPApplication.logE("PreferenceFragment.onCreateView", "setPreferenceScreen");
}
ListView lv = v.findViewById(android.R.id.list);
lv.setPadding(0, 0, 0, 0);
if (getPreferenceScreen() != null) {
// Override PreferenceScreen click and preferences style
for (int i = 0; i < getPreferenceScreen().getPreferenceCount(); i++) {
Preference preference = getPreferenceScreen().getPreference(i);
if (preference instanceof PreferenceCategory) {
for (int j = 0; j < ((PreferenceCategory) preference).getPreferenceCount(); j++) {
preferenceToMaterialPreference(((PreferenceCategory) preference).getPreference(j));
}
}
preferenceToMaterialPreference(preference);
}
}
}
return v;
}
Aggregations