小编use*_*312的帖子

对话框打开时检测返回按钮事件

我正在构建一个应用程序,它有 2 个打开的对话框,如果用户在某些对话框打开时按下后退按钮,我希望发生一些事情。但是,由于某种原因,当对话框打开时后退按钮事件没有注册。我通过在 onBackPressed() 中放置一个日志来测试它,每当对话没有打开并且我只是在主要活动上时,日志就会出现在 logcat 上。但是,如果对话是开放的,我只会得到这个:

W/InputEventReceiver:试图完成一个输入事件,但输入事件接收器已经被释放。

下面我放置了对话的代码:

    public void pair() {
        final Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();

        AlertDialog.Builder pairedList = new AlertDialog.Builder(this);
        pairedList.setTitle("Paired Devices");

        final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.select_dialog_singlechoice);
        if (pairedDevices.size() > 0) {
            for (BluetoothDevice device : pairedDevices) {
                arrayAdapter.add(device.getName());
            }
        }

        pairedList.setNegativeButton("cancel", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.dismiss();
                mBluetoothAdapter.disable();
//                pair_dialog = false;
            }
        });

        pairedList.setPositiveButton("Pair New", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                startActivityForResult(new …
Run Code Online (Sandbox Code Playgroud)

java android dialog keyevent back-button

2
推荐指数
1
解决办法
1760
查看次数

标签 统计

android ×1

back-button ×1

dialog ×1

java ×1

keyevent ×1