我有一个PreferenceActivity类,用于处理在我的应用程序中获取和设置首选项。但是我有一个“主”Activity类,它在启动时调用Web服务,并且基于Web服务的返回值,需要更新其中一个首选项。
我似乎无法在不抛出NullPointerException错误的情况下使用它。
以下是主要活动的代码:
protected void onPostCreate(Bundle savedInstanceState)
{
if(getWebServiceResult.equals("FALSE"))
{
//do stuff
}
else
{
myPreferences prefs = new myPreferences();
prefs.updateMyChoice("TRUE");
}
}
以下是PreferenceActivity类中抛出错误的代码:
public void updateMyChoice(String newText)
{
if(subscriber_opt_in == null) //this is coming up null
{
subscriber_opt_in = (EditTextPreference) findPreference("opt_in"); //error here
}
subscriber_opt_in.setText(newText);
subscriber_opt_in.setSummary(newText);
}
我需要知道如何正确更新此偏好设置。如果有一种方法可以在主Activity类中完成,那就更好了,但是如果我必须通过PreferenceActivity类来完成它,我只需要了解如何去做。
谢谢!
答案 0 :(得分:0)