【问题标题】:set Activity dialog uncancelable设置活动对话框不可取消
【发布时间】:2013-11-25 01:09:21
【问题描述】:

我有一个活动,我在我的应用程序中用作对话框(通过使用Theme.DialogstartActivity(dialogactivityintent))。但是当用户按下后退按钮(所有安卓手机都有)时,我不希望它关闭。我已经搜索了很多,但找不到解决方案。 请帮帮我。提前致谢!

编辑:我尝试过使用setCancelable(false),但徒劳无功。

【问题讨论】:

    标签: java android dialog android-studio


    【解决方案1】:

    你好用下面的代码::

    将此行粘贴到 setContentView(R.layout.main) 旁边

    this.setFinishOnTouchOutside(false);
    

    并使用以下行禁用返回键:

    @Override
    public void onBackPressed() {
    }
    

    【讨论】:

    • 这是正确答案。我应该已经被批准了。在我的情况下它运行良好
    【解决方案2】:

    你需要使用这个方法:

    setCancelable(false).
    

    【讨论】:

    • 我试过使用它,但它显示错误无法解决方法。
    • 错误是:Gradle: error: cannot find symbol method setCancelable(boolean)
    • 你能把你的 Activty 本身粘贴到 Pastie.org 吗
    • 没有。我不能这样做,因为我有很多组件和代码!
    • 好的,你可以在这里看到例子:vogella.com/articles/AndroidDialogs/article.html
    【解决方案3】:

    通常,如果您使用了对话框,则应该使用:

    • setCanceledOnTouchOutside()
    • setCancelable()

    但是,当您使用活动时,只需覆盖 onBackPressed 并且在其中什么都不做。

    【讨论】:

    • 感谢您的快速回复。您能否提供您建议的示例代码?
    • @Override public void onBackPressed() {}
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-10
    • 1970-01-01
    • 2017-02-04
    相关资源
    最近更新 更多