Android 控制器中如何获取preference
时间: 2024-10-25 10:12:31 浏览: 31
在Android中,如果你想从控制器(Activity、Fragment或其他组件)获取SharedPreferences设置,你可以按照以下步骤操作:
1. 首先,在你的应用启动时,通常在`AndroidManifest.xml`文件里或者某个配置类(如`Application`或`PreferencesHelper`)中,创建一个`SharedPreferences`对象并给它起一个名称,例如:
```xml
<application
android:name=".MyApp"
...>
<receiver android:name=".StartupReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
...
</application>
```
然后在`StartupReceiver.java`或类似的地方,初始化`SharedPreferences`:
```java
public class StartupReceiver extends BroadcastReceiver {
private static final String PREFS_NAME = "my_preferences";
@Override
public void onReceive(Context context, Intent intent) {
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context);
// 现在你可以访问sharedPreferences了
}
}
```
2. 接下来,你可以通过`getSharedPreferences()`方法获取这个`SharedPreferences`实例,并使用其中的方法读取或修改数据。比如获取一个字符串值:
```java
String myValue = sharedPreferences.getString("key", defaultValue);
```
3. 使用完后记得关闭引用,以释放资源:
```java
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("key", newValue);
editor.apply(); // 或者 editor.commit() 如果你想保存立即生效
```
阅读全文