XMLレイアウトを表示するクラスでAlertDialogを拡張しました。AlertDialogの標準ボタンは使用していません。独自の[OK]ボタンと[キャンセル]ボタンがあります。それらのリスナーはを呼び出しますdismiss()
。問題は、EditTextのコンテンツを編集していて、[OK]を押した場合(Android 3.1タブレットであり、キーボードによってダイアログの操作が妨げられない場合)、ダイアログは非表示になりますが、キーボードは非表示になり、バックグラウンドのままになります。理由とそれを修正する方法は何でしょうか?
これが私のダイアログのコンストラクターで、アイデアを与えるためのものです。
public NetworkCameraParametersDialog(Context context ) {
super(context);
View content = ((LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.dialog, null);
setView(content);
Button btnOk = (Button) content.findViewById(R.id.btn_Ok);
btnOk.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Some work
dismiss();
}
});
Button btnClose = (Button) content.findViewById(R.id.btn_Close);
btnClose.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dismiss();
}
});
}