ListView 的 Activity 不处理后退键事件

发布于 2024-11-25 01:14:35 字数 345 浏览 4 评论 0原文

我使用ActivityGroup来实现选项卡界面。在一个选项卡中,我有一个带有 ListView 的活动 A,当我单击 sur un item 时,选项卡中会打开另一个页面(活动 B),然后当我想返回到第一页(活动 A)时,有时它会关闭l'应用程序。我不明白为什么..

我在活动A中使用MyCursorAdapter(SimpleCursorAdapter的子类)作为ListView。

每次我按后退键时,问题都不会出现。只是有时,偶尔。尤其是当我在返回第一页之前等待片刻(前2分钟)。

通过调试,我发现当 il 不返回第一页时,不会调用“onBackPress”或“onKeyDown”。

有什么想法吗?谢谢!

I use ActivityGroup to realize the tab interface. In one tab, I have a Activity A with a ListView, when I click sur un item, another page opens (Activity B) in the tab, then when I want to go back to the first page(Activity A), sometimes it close l'application. I don't understand why..

I use MyCursorAdapter (sub class of SimpleCursorAdapter) for the ListView in the Activity A.

The problem don't appear every time I hit the back key. Just sometimes, occasionally. Especially when I wait for a moment (2mins for ex) before returning to the first page.

By debugging, I see when il don't go back to the first page, the "onBackPress" ou "onKeyDown" is not called.

Any ideas? Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

季末如歌 2024-12-02 01:14:35

我在 listactivity 上遇到了同样的问题,最终我重写了 listactivity 中的 onBackPressed() 来调用它所属的活动组的后退函数。不是最好的解决方案,但它在大多数情况下都有效。

I was having the same issue with listactivities and I ended up overriding onBackPressed() in the listactivity to call the back function of the activitygroup it was a part of. not the best solution but it works for the most part.

旧街凉风 2024-12-02 01:14:35
 @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
   if (event.getKeyCode() == KeyEvent.KEYCODE_BACK && Groupname.group != null) {
       Groupname.group.popView();
       return true;
   }
   return super.onKeyDown(keyCode, event);
 }

您应该为活动组页面添加此代码

,并且类应该像这样

public class Groupname extends ActivityGroup {

 public static Groupname group;
// any aditional code
}
 @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
   if (event.getKeyCode() == KeyEvent.KEYCODE_BACK && Groupname.group != null) {
       Groupname.group.popView();
       return true;
   }
   return super.onKeyDown(keyCode, event);
 }

you should add this code for the activity group page

and the class should be like this

public class Groupname extends ActivityGroup {

 public static Groupname group;
// any aditional code
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文