0

preferenceをクリックすると、ユーザーにダイアログを表示します。私はnew AlertDialog.Builder(getBaseContext())呼び出しで使用する必要がありますどのような文脈onPreferenceClickメソッドからダイアログを表示

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    addPreferencesFromResource(R.xml.pref_general); 

    Preference pr = findPreference("advisorsKey"); 

    pr.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { 
     @Override 
     public boolean onPreferenceClick(Preference preference) { 


      AlertDialog.Builder dlgAlert = new AlertDialog.Builder(getBaseContext()); 
      dlgAlert.setMessage("This is an alert with no consequence"); 
      dlgAlert.setTitle("App Title"); 
      dlgAlert.setPositiveButton("OK", new DialogInterface.OnClickListener() { 
       @Override 
       public void onClick(DialogInterface dialog, int which) { 

       } 
      }); 
      dlgAlert.setCancelable(true); 

      dlgAlert.setPositiveButton("Ok", 
        new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface dialog, int which) { 
          //dismiss the dialog 

         } 
        }); 

      dlgAlert.create().show(); 




      return false; 
     } 
    }); 

} 

- 私は停止にアプリを引き起こすonPreferenceClick方法から、次のコードを使用できますか?単に

+1

使用 'AlertDialog.Builder dlgAlert =新しいAlertDialog.Builder(YourClassName.this);' – UltimateDevil

+0

それとも単に、 'AlertDialog.Builder dlgAlert =新しいAlertDialog.Builder(この) ; ' –

+0

@ReazMurshed私のために働いて、ありがとう – Shai

答えて

0

使用...

AlertDialog.Builder dlgAlert = new AlertDialog.Builder(this); 
関連する問題