在我的偏好活动中,我正在使用警告对话框,但我在OnSharedPreferenceChangeListener
上收到错误,我在某处做错了吗?请帮帮我,谢谢!
public class MainSettings extends PreferenceActivity implements //getting error here OnSharedPreferenceChangeListener
{
private WebView webView4;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
public boolean onPreferenceTreeClick
(PreferenceScreen preferenceScreen,
final Preference preference)
{
if
(preference.equals("dialog_preference"))
{
AlertDialog.Builder adb = new AlertDialog.Builder(this);
adb.setCancelable(false);
adb.setView(webView4);
adb.setTitle("What's New?");
adb.setIcon(R.drawable.alert_icon);
adb.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
}
});
adb.show();
}
答案 0 :(得分:0)
您需要将其声明为:
public class MainSettings extends PreferenceActivity implements OnSharedPreferenceChangeListener {
...
}
并且,为了编译OnSharedPreferenceChangeListener
,您需要导入以下类:
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
OnSharedPreferenceChangeListener
包含在android.jar
文件中,因此请确保在项目中包含此库。
另外,您需要定义onSharedPreferenceChanged
方法以捕获对共享首选项的更改:
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
if (key.equalsIgnoreCase("your_key")) {
// display your dialog here
}
}