Articles of 首选项

从服务获取SharedPreferences

我试图从服务访问共享首选项。 我使用以下内容将文本的值保存到字符串中… SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE); SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putString(“Ignore1_value”, Example.getText().toString()); editor.commit(); 但是,我如何获得服务的价值? 我尝试的一切都没有回报。 任何帮助都是完美的,非常感谢? 我也查看了其他一些问题而没有解决方案。 我想出了这个,但就像我说的那样,它没有文字。 Context ctx = getApplicationContext(); SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(ctx); String example1string = sharedPreferences.getString(“Ignore1_value”,””); Log.i(“**GetSettings”, example1string);

如何编辑/重置Alarm Manager?

我已经设置了一个首选项屏幕,其中我有一个列表首选项,允许用户选择时间间隔来通知它们。 他们可以选择是否每2,4,8,10或12小时后通知他们。 这是我的列表首选项: 这是我的Settings.class文件: public class Settings extends PreferenceActivity implements OnPreferenceChangeListener{ @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.settings); ListPreference listPreference = (ListPreference) findPreference(“listPrefs”); listPreference.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { return false; } }); @Override public boolean onPreferenceChange(Preference preference, Object newValue) { // TODO Auto-generated […]

如何在android中配置java.util.logging.logger以使用放在SD卡上的日志属性文件?

我一直在尝试使用java.util.logging.logger将内容记录到SD卡上的文件中。 现在,我希望记录器使用我将在SD卡上提供的日志记录配置/属性文件。 我一直在尝试的一种方式是: – 我一直在尝试使用logmanager和java.util.prefs.preferences,但是我得到了BackingStoreException – > AccessPermission Exception,它会导致错误消息: str / prefs.xml表示的.java / .userprefs / path未find。 private void setLoggingProperties(File logProperties) throws Exception { try { if(logProperties!=null && logProperties.isFile() && logProperties.exists()) { String str = logProperties.getAbsolutePath(); MyLogger.v(TAG,”Log Properties file path: ” + str); if(str!=null && str.length()>=0) { Preferences logPropPref = Preferences.userNodeForPackage(SSCService.class); if(logPropPref!=null) { String path = […]

Android偏好设置摘要默认颜色?

我已经在一个真实的手机中安装了我的应用程序,即使在模拟器中,首选项摘要的所有文本看起来都是相同的颜色,在真实手机中颜色是不同的(某种蓝色…但我猜这取决于手机的型号)。 如何将此颜色设置为我的自定义首选项组件? (我已经实现了自己的搜索栏,其摘要文本颜色与所有其他组件文本颜色不同…)。 谢谢!

如何从首选屏幕返回主要活动?

我有一个主要活动和一个preferenceActivity。 在我的第一个活动中,我调用menu并通过调用startActivityForResult继续使用preferenceActivity。 case R.id.settings: startActivityForResult(new Intent(this, SettingsActivity.class), LAUNCH_SETTINGS); return true; 然后我更改我的设置并希望返回主要活动,并查看应用了新设置的主要活动。 在onPause()方法中执行以下操作(因为我正确理解当按下后退按钮时会调用此方法,对吧?) @Override protected void onPause() { super.onPause(); setResult(RESULT_OK, new Intent(this, MainActivity.class)); finish(); } 关于主要活动 protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == LAUNCH_SETTINGS) { if (resultCode == RESULT_OK) { new RefreshList().execute(ACTION_SELECT); Log.d(TAG, “On activity result”); } } } 但是我的acyncTask没有调用并且没有打印日志。 我怎么能正确地做到这一点? […]

checkboxpreference中的多重依赖关系android或listpreference的依赖关系

例如:我的首选项屏幕中有三个checkbox,每个checkbox有3个不同的listpreference(A,B,C)首选项listpreference(A,B,C) 。 我想让用户一次只选择一个checkbox。 我如何实现这一目标? 首选项屏幕中没有单选按钮 我不能使用Listpreference,如果我可以使用它 ListPreference android:key=”livewallpaper_testpattern” android:title=”@string/livewallpaper_settings_title” android:summary=”@string/livewallpaper_settings_summary” android:entries=”@array/livewallpaper_testpattern_names” android:entryValues=”@array/livewallpaper_testpattern_prefix” 这个Listprefrence的数组是“蓝色”,“红色”,“白色” 如果是蓝色ListPreference A取决于蓝色 如果它是红色ListPreference B取决于红色 如果是白色ListPreference C取决于白色 我怎样才能做到这一点? 我在谷歌搜索了3-4页,这里几乎所有关于这些,但我找不到任何答案。 最好的祝福, 提前致谢..

我可以通过XML为RingtonePreference插入android:defaultValue特征吗?

有没有办法通过XML在RingtonePreference中添加默认值? 例如,这是我的preference.xml的样子。 如果可能的话,我想将RingtonePreference设置为默认铃声,如下所示:

Android首选项活动IllegalArgumentException:此活动的无效片段

我的偏好活动有问题。 我创建了偏好屏幕和一个偏好活动。 在Android 4.2.2手机上,它运行正常。 但是在使用Android 5.0的Android Emulator上,它会因此错误而崩溃: IllegalArgumentException: Invalid fragment for this activity. 这是因为这段代码吗?: @Override protected boolean isValidFragment(String fragmentName) { return MyPreferenceFragment.class.getName().equals(fragmentName); } 第二个首选项片段是MyExportPreferenceFragment …如何将它们与一个活动一起使用? 谢谢你的帮助 //编辑:find一个解决方案,但也许它太hacky ^^ @Override protected boolean isValidFragment(String fragmentName) { if(MyPreferenceFragment.class.getName().equals(fragmentName)) { return MyPreferenceFragment.class.getName().equals(fragmentName); } else { return MyExportPreferenceFragment.class.getName().equals(fragmentName); } } 这个可以吗? 或者这样做是危险的吗?

创建自己的SwitchCompat首选项

由于appcompat v7缺少SwitchCompatPreference因此似乎有必要自己创建它。 怎么能实现这一目标? 我google了一下,find了DialogPreference的教程。 我尝试将它用于SwitchCompatPreference但在我的xml布局中,它总是说在偏好xml中不允许这个类。 我需要做什么?

在ICS首选项中转义% – 我是否真的必须编写特定于版本的字符串处理?

我有一个在ICS上崩溃的应用程序。 到目前为止工作得很好(虽然我不确定我是否真的有一个蜂窝平台可以测试,我们所有的测试手机都是姜饼或更低的,现在我有几个ICS手机可以玩)。 我的首选项页面中的以下代码(从onResume和OnPreferenceChangeListener调用)工作正常: protected void setBatteryAlarmSummary(String newValue){ Preference batteryAlarm = (Preference) findPreference( getString(R.string.battery_low_alarm) ); StringBuilder summary = new StringBuilder(); summary.append(getString(R.string.battery_alarm_summary_label)); summary.append(” “); summary.append(newValue); summary.append(“%”); batteryAlarm.setSummary(summary); } 这将pref摘要设置为“10%的低电量警报”。 现在,有了ICS,它崩溃了。 不是当它执行setSummary时,而不是当页面显示时,但是当你甚至稍微滚动首选项时,显然会触发渲染(这个项目大约是8个左右的项目,所以它在列表中“低于” )。 修复ICS很简单,只需转义百分号: summary.append(“%%”); 然而,姜饼上的代码显示“低电池警报10 %%” 我可以根据版本编写它来改变,但那只是愚蠢的。 他们是否真的打破了他们的偏好渲染的向后兼容性,或者这只是一个三星的东西(不幸的是,这是我现在唯一的ICS测试平台)?