从Activity返回时刷新TextView

时间:2013-10-10 16:52:52

标签: android textview refresh preferenceactivity preference

我正在编写一个保存您偏好的小应用程序。在主要活动中,应显示这些首选项。但是,从PreferenceActivity类返回时,我仍然获得旧值。一旦我通过“后退”按钮实际退出应用程序,视图才会更新。

我尝试将setText命令放在onResume()和onRestoreInstanceState()函数中,但实际上都没有刷新它。

我需要做些什么才能让它刷新?

2 个答案:

答案 0 :(得分:1)

您应该覆盖onSharedPreferenceChanged以对更改首选项作出反应:

@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,String key) {
    //code
}

答案 1 :(得分:1)

如果直接从主活动调用PreferenceActivity,则解决方案是使用startActivityForResult方法启动PreferenceActivity。此方法允许从启动的活动传递一些数据到启动它的活动。 这意味着您必须在主活动中实现onActivityResult方法。

如果您选择此解决方案,请查看官方文档中的文章“从活动中获取结果”:http://developer.android.com/training/basics/intents/result.html