0

Im получает ошибку «Невозможно уничтожить действие (NullPointer)», когда моя игра показывает автоматическую паузу оповещения и блокировки экрана через некоторое время.Невозможно уничтожить активность при открытии alertdialog и блокировки экрана

Я читал подобное сообщение, но я не могу заставить его работать.

Вот метод, который вызывается, когда пользователь нажимает кнопку назад или кнопку меню:

private void showPauseDialog() 
    { 
     this.runOnUiThread(new Runnable() { 
      @Override 
      public void run() { 
       //Handler mHandler = new Handler(); 
       MadhonActivity.this.mMusic.pause(); 
       AlertDialog.Builder builder; 
       //AlertDialog alertDialog; 



       LayoutInflater inflater = (LayoutInflater) MadhonActivity.this.getSystemService(LAYOUT_INFLATER_SERVICE); 
       View layout = inflater.inflate(R.layout.pause,(ViewGroup) getCurrentFocus());//findViewById(R.id.layout_root)); 


       //TextView text = (TextView) layout.findViewById(R.id.stcomplete_score); 
       TextView text_0 = (TextView) layout.findViewById(R.id.pause_tv); 
       //text.setText("200"); 
       Typeface font = Typeface.createFromAsset(getAssets(), "font/mvb2.ttf"); 
       //text.setTypeface(font); 
       text_0.setTypeface(font); 


       ImageButton btnext = (ImageButton)layout.findViewById(R.id.pause__btnext); 


       builder = new AlertDialog.Builder(MadhonActivity.this); 
       builder.setView(layout); 


       final AlertDialog alertDialog = builder.create(); 
       alertDialog.setCancelable(true); 

       btnext.setOnClickListener(new OnClickListener(){ 

        @Override 
        public void onClick(View v) { 
         // TODO Auto-generated method stub 
         alertDialog.dismiss(); 
         MadhonActivity.this.mMusic.play(); 
        }}); 

       alertDialog.show(); 


       alertDialog.getWindow().setBackgroundDrawable(new ColorDrawable(0)); 




      } 
     }); 
    } 

А вот мой метод OnDestroy:

protected void onDestroy() 
{ 
    madhon_ko.stop(); //sound 
    mMusic.stop(); //sound 
    super.onDestroy(); 

} 

Любая помощь?

ответ

0

Я думаю, что в методе onClickListener() вам нужно вызвать метод finish() для действия, которое вы хотите закрыть. За дополнительной помощью вы можете спросить меня.

Смежные вопросы