2016-10-19 196 views
0

這是我的代碼後,如何關閉活動:點擊進度對話框按鈕

LayoutInflater inflater= LayoutInflater.from(this); 
View view=inflater.inflate(R.layout.dialog, null); 

alertDialog = new AlertDialog.Builder(this); 
alertDialog.setTitle("Titel"); 
alertDialog.setView(view); 
alertDialog.setNegativeButton(getString(R.string.accept), new DialogInterface.OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialogInterface, int i) { 
      Activity.this.finish(); 
     } 
    }); 
    alertDialog.setPositiveButton(getString(R.string.decline), new DialogInterface.OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialogInterface, int i) { 
      // handle accepting 
     } 
    }); 
alert = alertDialog.create(); 
alert.show(); 

我的問題是,點擊衰落活動時不會關閉。

任何人都可以幫助我嗎?

+0

對於每個給出的片斷的正負按鈕被交換,不是嗎?另外,如果你想完成一個Activity,如果你在一個Activity中,只需完成()方法即可。 – vidulaJ

+0

我沒有看到它們被交換。你可以幫我嗎? – Gamecraftler

+0

另外,您需要使用您的活動名稱,例如MyActivity.this.finish(),而不是Activity.this.finish() – instanceof

回答

1

這是因爲您已經切換了按鈕的標籤。

         //was R.string.accept 
alertDialog.setNegativeButton(getString(R.string.decline), new DialogInterface.OnClickListener() { 
    @Override 
    public void onClick(DialogInterface dialogInterface, int i) { 
     Activity.this.finish(); 
    } 
}); 
            //was R.string.decline 
alertDialog.setPositiveButton(getString(R.string.accept), new DialogInterface.OnClickListener() { 
    @Override 
    public void onClick(DialogInterface dialogInterface, int i) { 
     // handle accepting 
    } 
}); 
+0

謝謝。現在它**起作用**。 – Gamecraftler

0

試試這個:

alertDialog.setNegativeButton(getString(R.string.accept), new DialogInterface.OnClickListener() { 
    @Override 
    public void onClick(DialogInterface dialogInterface, int i) { 

    } 
}); 
alertDialog.setPositiveButton(getString(R.string.decline), new DialogInterface.OnClickListener() { 
    @Override 
    public void onClick(DialogInterface dialogInterface, int i) { 
       Activity.this.finish(); 
    } 
}); 
alert = alertDialog.create(); 
alert.show(); 
相關問題