カスタム ダイアログは、プログラムの特定の時点で、たとえば [編集] ボタンを押したときに閉じますが、リスト ビューから何かを選択して [追加] ボタンを押してもダイアログは閉じません。両方のボタンが以下の同じコードを使用することになりますが、どちらが実行されるかは if ステートメントによって決定されます。いずれにせよ、問題は pcDialog.dismiss() が if ステートメントの外側にあるため、常に破棄する必要がありますが、そうではありません。
問題が何であるかについてのアイデアはありますか?私のダイアログは、メソッドの外側でメンバーとして宣言されています。
createDoneBtn.setOnClickListener(
new View.OnClickListener()
{
@Override
public void onClick(View v)
{
if ( !editingPC )
{
...
}
else if ( editingPC )
{
...
}
adapter.notifyDataSetChanged();
pcDialog.dismiss();
}
});