如何避免在按下“搜索”按钮时解除DialogFragment - Android

时间:2011-06-01 11:01:47

标签: android dialog android-3.0-honeycomb android-fragments

设置后:

MyDialogFragment fragment = new MyDialogFragment();
fragment .setCancelable(false);

点击搜索按钮后仍然被解雇。 我没有在活动中找到覆盖onKeyDown();

的选项

我需要创建对话框,直到我的“关闭”按钮被按下才会显示。请帮助

2 个答案:

答案 0 :(得分:8)

我刚刚找到答案。创建DialogFragment后,我们可以得到它的对话框

Dialog dialog = getDialog();

if( null!= dialog)
{
   dialog.setOnKeyListener(new OnKeyListener()
{

        @Override
    public boolean onKey ( DialogInterface dialog , int keyCode , KeyEvent event )
    {
        // disable search button action
        if (keyCode == KeyEvent.KEYCODE_SEARCH)
        {
            return true;
        }
        return false;
    }
});
}

答案 1 :(得分:0)

getFragmentManager().popBackStack();

希望这有帮助!