2013-08-06 76 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