我正在制作一个相当基础的游戏。根据我的喜好,可以选择更改难度设置。我希望能够以某种方式在调用它的主要活动中感知它们是否改变了难度。 (然后重新启动游戏)Android - 确定用户访问后偏好是否已更改PreferenceActivity
我很困难,因为偏好活动是如何异步处理的。如果我添加逻辑来检查值,然后将意图发送到我的PreferenceActivity(从菜单选项中),它确实不起作用...
有人能指出我正确的方向吗?序列化通常异步处理的一段代码,或者想知道如何检测偏好改变?是否有隐藏在某处的监听器类?
为了后代的缘故,这里是处理意图的代码以及我失败的原因。 (片段,从菜单里面onOptionsItemSelected,开关内)
case R.id.menuOptions:
String currentDifficulty = preferences.getString("difficulty","problem!");
Intent i = new Intent(this, prefs.class);
startActivity(i);
if (currentDifficulty.equals(preferences.getString("difficulty","problem!")))
return true;
else doNewGame();
return true;
谢谢。这个例子对我非常有帮助,我将其中一名作为匿名听众,并将其连接起来以满足我的需求。 – Eric 2011-04-27 01:58:57