2013-08-06 72 views
0

如果用户已经按下该按钮,我需要停止显示AlertDialog(即在OnCreate中)。如果已经点击了肯定按钮,我需要禁用AlertDialog。Android - 如果按钮已被点击,停止显示AlertDialog

AlertDialog.Builder dlgAlert = new AlertDialog.Builder(this); 
    dlgAlert.setMessage(getString(R.string.dialogMSG)); 
    dlgAlert.setTitle("App Support Checker"); 
    dlgAlert.setPositiveButton(R.string.yesdev, 
      new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int which) { 

       } 
      }); 

dlgAlert.setCancelable(false); 
    dlgAlert.create().show(); 

回答

0

你的意思是在按下肯定按钮,俞需要删除的对话框?顺便说一下,你可以调用dismiss()api来取消对话框。

为了获得共享偏好,用下面的方法在您的活动:

SharedPreferences prefs = this.getSharedPreferences("com.example.app", Context.MODE_PRIVATE); 

阅读喜好:

String dateTimeKey = "com.example.app.datetime"; 
long l = prefs.getLong(dateTimeKey, new Date().getTime()); 

编辑和保存喜好

Date dt = getSomeDate(); 
prefs.edit().putLong(dateTimeKey, dt.getTime()).commit(); 

了Android SDK的示例目录示例检索和stroing共享首选项。它坐落在:/样品/ android-/ApiDemo小号目录

要存储在共享偏好值:

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); 
SharedPreferences.Editor editor = preferences.edit(); 
editor.putString("Name","Sushil"); 
editor.commit(); 

要从共享偏好检索值:

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); 
String name = preferences.getString("Name",""); 
if(!name.equalsIgnoreCase("")) { 
    name = name+" Jha"; /* Edit the value here*/ 
} 

这是正确和最好的方式来处理你正在谈论的情况。

0

你需要指向别的地方,我的意思是一些其他的活动。否则,您可以使用setNegativeButton而不是setPositiveButton。

dlgAlert.setNegativeButton(R.string.yesdev, 
     new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int which) { 

      } 
     }); 

干杯,

+0

谢谢,我alredy有一个setNegativeButton,但我需要隐藏alertDialog ...你能帮忙吗? – user2606414