我做了一个对话。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myDialog = new Dialog(this);
ShowDialog();
}
public void ShowDialog(){
nevershowagain = (CheckBox) findViewById(R.id.checkBox);
closedialog = (Button) findViewById(R.id.closedialog);
myDialog = new Dialog(this);
int width = (int)(getResources().getDisplayMetrics().widthPixels*0.90);
int height = (int)(getResources().getDisplayMetrics().heightPixels*0.90);
myDialog.getWindow().setLayout(width, height);
myDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
myDialog.setContentView(R.layout.activity_disclaimer);
closedialog.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (nevershowagain.isChecked()) {
prefrencestring = "1";
dialogPreferences = PreferenceManager.getDefaultSharedPreferences(context)
SharedPreferences.Editor editprefrences = dialogPreferences.edit();
editprefrences.putString("showdialog", prefrencestring);
editprefrences.commit();
}
myDialog.dismiss();
}
});
dialogPreferences = PreferenceManager.getDefaultSharedPreferences(context)
String check = dialogPreferences.getString("showdialog", "");
if (check.equals("1")) {
} else {
myDialog.show();
}
}
现在,我不知道要在getDefaultSharedPreferences中放置什么而不是上下文...有什么帮助吗? 有人说我需要参加活动的课程,但是我是新来的,我不知道这意味着什么。
答案 0 :(得分:1)
您应该通过getApplicationContext()
这样,您将获得应用程序上下文的默认共享首选项。
答案 1 :(得分:0)
getApplicationContext()应用程序上下文与Applicaition相关联,并且在整个生命周期中始终相同。