2012-03-19 10 views
0

私はダイアログボックスを作成していますが、(これは)isntを使っています。これまではダイアログボックスを呼び出すボタンでしたが、呼び出されたダイアログボックス内のボタンは別のダイアログを呼び出す必要がありました。ダイアログのdialogdelconは問題のあるものです。ここで 私はどんなコンテキストが必要ですか?

コードです: thisがボタン click listnerではなく、あなたのクラス Object

+0

どこで失敗するのですか?私は、あなたがアクティビティコンテキストmyActivityName.thisが必要であると推測しています。 – bbedward

+0

私の活動名は正確に何ですか?私はまだアンドロイドに新しいです。 – nexus490

答えて

1

getApplicationContext()またはYourActictyName.thisを使用して、代わりにgetApplicationContext()を追加thisの場合は問題ありません。これは、ボタンコンテキスト内のthisがボタン環境を参照するためです。

0

このコードはonCreate()方法で、または似ている場合を指しているので

case R.id.delappt: 
     //rmvall(); 

     final Dialog dialogdelsel = new Dialog(this); 
      dialogdelsel.setContentView(R.layout.delsel); 
      dialogdelsel.setTitle("What would you like to do?"); 
      dialogdelsel.setCancelable(true); 

      Button btndelsel = (Button) dialogdelsel.findViewById(R.id.btndelsel); 
      btndelsel.setOnClickListener(new OnClickListener() { 


       @Override 
       public void onClick(View v) { 
        // delete selected code here. 

       } 
      }); 

     Button btndelall = (Button) dialogdelsel.findViewById(R.id.btndelall); 
      btndelall.setOnClickListener(new OnClickListener() { 


       @Override 
       public void onClick(View v) { 
        // delete all code here. 
        final Dialog dialogdelcon = new Dialog(); 
        dialogdelcon.setContentView(R.layout.delcon); 
        dialogdelcon.setTitle("Deletion Confirmation"); 
        dialogdelcon.setCancelable(true); 

        Button buttoncnclok = (Button) dialogdelcon.findViewById(R.id.btndelcon); 
        buttoncnclok.setOnClickListener(new OnClickListener() { 

        // on click for cancel button 
         @Override 
         public void onClick(View v) { 
          dialogdelcon.dismiss(); 
         } 
        }); 

       dialogdelcon.show(); 
       } 
      }); 


     dialogdelsel.show(); 
     break; 
0

2つのダイアログ間の分離を改善するには、onClickハンドラからshowDialog(R.id.delapptcon)を呼び出すことをお勧めします。次に、アクティビティのonCreateDialogに新しいダイアログをロードします。このようにして、より再利用可能なダイアログを作成し、現在のスコープの問題を回避できます。

関連する問題