在android qtquick中单击后退按钮时应用程序退出

Posted

技术标签:

【中文标题】在android qtquick中单击后退按钮时应用程序退出【英文标题】:App exits on back button click in android qtquick 【发布时间】:2014-08-28 14:23:38 【问题描述】:

我正在开发一个将首先在 android 上运行的应用程序。但是,我对后退按钮有一个问题:每次点击它时应用程序都会退出。我不想要这种行为。我检查了很多方法,并尝试实现一些代码,但没有任何效果。

这是我的代码:

Item 
    id: student_home_page;
    focus: true

    // ///////////////////////////////////////////////////////////////

    Keys.onReleased: 
        console.log("TEST for Back ");
        if (event.key == Qt.Key_Back) 
            console.log("BAck Button HAndled");
            event.accepted = true;
        
    

当我到达此页面后单击返回按钮时,它不会在控制台上打印任何内容,因为它不会进入内部

我只在 Qt Creator 的控制台上收到此消息:

/uniActivity(15431): onStop I/AndroidRuntime(15431):VM 以结果代码 0 退出,已跳过清理。

知道为什么它不处理这个关键事件或根本不处理任何内部事件吗?

【问题讨论】:

this answer 中给出了解决问题的最安全的 QML 方式。 【参考方案1】:

您应该处理 StackView 本身内部的后退按钮,而不是子页面,请参阅我的回答 here

【讨论】:

【参考方案2】:

也许这对你有用。尝试覆盖活动的 onBackPressed() 方法:

@Override
public void onBackPressed() 
    // Do something or call finish()

【讨论】:

它没有任何改变......仍然是问题......:(

以上是关于在android qtquick中单击后退按钮时应用程序退出的主要内容,如果未能解决你的问题,请参考以下文章

Android:为EditText打开键盘时处理后退按钮单击

单击两次后退按钮以退出活动

在本机反应中处理设备后退按钮

用户按下后退按钮后检查互联网连接。(Android的警报框)

如何处理后退按钮android以退出应用程序并在首页中打开时关闭本机导航侧菜单

如何防止在android片段中按下后退按钮时调用onCreateView