`
寻梦者
  • 浏览: 637384 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

SharedPreference的监听

 
阅读更多

在实际项目开发中,通过实现OnSharedPreferenceChangeListener接口对SharedPreference进行监听:

 

 

/**
 *@author: antty 
 * @time:2011-11-3 
 */
public class SpListener implements OnSharedPreferenceChangeListener {

    private static final String TAG = "SpListener";
	
	@Override
	public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
        Log.e(TAG , "------" + key);
	}

}
 

 

 

 

 

在监听之前需要绑定对应的监听器:

 

 

@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		sp = getSharedPreferences(getString(R.string.sp_user), MODE_PRIVATE);
		sp.registerOnSharedPreferenceChangeListener(new SpListener());
		
		Button btn_user = (Button) findViewById(R.id.btn_user);
		btn_user.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				Editor edt = sp.edit();
				edt.putString("username", "antty");
				edt.commit();
			}
		});
	}
 

 

分享到:
评论

相关推荐

    SharedPreference示例

    6. **监听变化**:可通过`registerOnSharedPreferenceChangeListener()`注册监听器,当SharedPreference中的数据发生变化时,会回调`onSharedPreferenceChanged()`方法。 ```java sharedPreferences....

    SharedPreference例子

    SharedPreference是Android系统提供的一种轻量级的数据存储方式,用于应用程序内部存储少量的偏好设置或简单数据。在Android开发中,我们经常用它来保存用户的个性化设置,如应用的主题色、音量调节、是否开启通知等...

    mooc_android_lesson20_SharedPreference登录功能

    在`MainActivity.java`或`MainActivity.kt`中,我们可以监听登录按钮的点击事件,获取EditText中的文本,并调用`getSharedPreferences()`方法创建一个SharedPreference对象。此方法需要两个参数:首选项文件的名称...

    11用SharedPreference读写

    在Android应用开发中,数据存储是...通过`SharedPreferences.Editor`进行写操作,使用`getXXX()`方法进行读操作,并可以通过监听器跟踪变化。熟练掌握`SharedPreferences`的使用,能够提升应用的用户体验和功能完整性。

    安卓的本地密码实现Demo sharedpreference

    开发者可能还会使用SharedPreferences监听器,以便在数据改变时实时更新UI。 总之,这个“安卓的本地密码实现Demo sharedpreference”是一个学习如何在Android中安全存储密码的好资源。它展示了SharedPreferences的...

    SharedPreference.rar

    4. 监听用户操作:可以通过重写`onPreferenceChange()`等方法来监听用户在`PreferenceActivity`中的操作,实现数据的实时更新。 ### 3. 共享数据的持久化策略 `SharedPreferences`和`PreferenceActivity`都是持久...

    SharedPreference

    `LiveData`与`SharedPreferences`结合,可以创建一个`LiveData`对象来监听`SharedPreferences`的变化,并在数据改变时通知观察者: ```kotlin class SettingsRepository(private val sharedPreferences: ...

    Android程序设计-数据存储SharedPreference.pptx

    此外,`SharedPreferences`还支持监听器`Preference.OnPreferenceChangeListener`,当某个`Preference`的值发生变化时,会触发`onPreferenceChange()`方法。在这个方法中,开发者可以决定是否接受新的值并将其写入`...

    SharedPreference:Android中如何使用SharedPeference类的几个例子

    但请注意,这个监听器只在当前活动的生命周期内有效,因此你需要在每个可能修改SharedPreference的地方添加和移除监听器。 ```java SharedPreferences.OnSharedPreferenceChangeListener listener = new ...

    PasswordRemenber.zip

    在监听器中,清理SharedPreference中的用户名和密码键值对,清空登录状态,然后使用`finish()`方法关闭当前活动并跳转回登录界面。 3. **其他状态管理**:除了清除SharedPreference,可能还需要清除其他与用户会话...

    Android拨号拦截提醒程序

    总结来说,Android拨号拦截提醒程序通过BroadcastReceiver监听拨号意图,利用SharedPreference保存用户设置,借助对话框提供交互界面,从而实现对用户拨号行为的拦截和提醒。这不仅展示了Android的基本组件使用,也...

    FirestoreLogin_SharedPreference

    它允许开发者存储和查询结构化的JSON数据,并提供了实时监听数据变更的能力。主要特性包括: 1. **实时数据同步**:Firestore 可以在客户端和服务器之间实时同步数据,这意味着当数据在云端更新时,所有连接的...

    Android学习笔记之Shared Preference

    5. **监听偏好变更**: 若要在偏好值发生变化时执行某些操作,可以注册`OnSharedPreferenceChangeListener`: ```java preferences.registerOnSharedPreferenceChangeListener(new SharedPreferences....

    android实现搜索效果并将搜索历史保存到SQLite中

    当`EditText`获取焦点时,我们可以通过监听`FocusChange`事件来触发显示历史记录的功能。在`onFocusChange()`方法中,我们可以判断如果当前`EditText`获得了焦点,就加载并显示历史搜索记录。 为了实现搜索历史记录...

    android欢迎界面及导航界面的Demo

    本Demo展示了如何在Android Studio中实现这两个关键组件,使用的主要技术是ViewPager和SharedPreference。 首先,让我们深入理解一下欢迎界面。欢迎界面通常在应用程序启动时短暂展示,为用户提供品牌形象或加载...

    PreferenceHolder:在Kotlin中使SharedPreference用法有趣

    此外,如果需要,还可以进一步扩展`PreferenceHolder`,比如添加支持LiveData的版本,使其能够自动监听偏好设置的变化并通知UI更新。 总的来说,`PreferenceHolder`是一种利用Kotlin语言特性优化`SharedPreferences...

    模拟省市级联

    考虑到性能,省市数据可以缓存在本地(如SQLite数据库或SharedPreference),避免频繁的网络请求。另外,为了防止内存泄漏,记得在不再需要时取消网络请求的回调。 9. **SpinnerDemo**: 文件名"SpinnerDemo"可能...

    模仿微信的聊天界面简单实现

    另外,为了实现聊天记录的持久化,可以利用SQLite数据库或SharedPreference存储已发送和接收到的消息,以便于在应用重启后恢复聊天状态。同时,为了实时更新消息列表,可以采用异步任务(如AsyncTask)或者更现代的`...

    60个Android开发精典案例 Android软件源码.zip

    4-16-1(游戏保存之SharedPreference) 4-16-2(游戏保存之Stream) 4-3(View游戏框架) 4-4(SurfaceView游戏框架) 4-7-1(贝塞尔曲线) 4-7-2(Canvas画布) 4-8(Paint画笔) 4-9(Bitmap位图渲染与操作) 5-1(飞行射击游戏实战...

    android游戏开发从入门到应用实例

    4-16-1(游戏保存之SharedPreference) 4-16-2(游戏保存之Stream) 4-3(View游戏框架) 4-4(SurfaceView游戏框架) 4-7-1(贝塞尔曲线) 4-7-2(Canvas画布) 4-8(Paint画笔) 4-9(Bitmap位图渲染与操作) 5-1(飞行射击游戏实战...

Global site tag (gtag.js) - Google Analytics