我如何在 MaintabActivity 中收听 BACK 键按下(包含 2 个子选项卡活动)
公共类 MyTab 扩展 TabActivity;
公共类 SubTab 扩展 TabActivity;
MyTab 中定义了 2 个选项卡:
- setContent(new Intent(this, SubTab.class))
- setContent(R.id.view1)
然后在 MyTab 中编写一个方法:
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
Log.i("MyTab Back", "In MyTab ");
return true;
}
return super.onKeyDown(keyCode, event);
}
和 SubTab 中的方法,只需更改为 Log.i("SubTab返回”、“在子选项卡中”)。
问题: 在子选项卡中按返回键,Logcat 中仅显示“在子选项卡中”。
删除子选项卡中的方法,然后按返回键 Logcat 中不显示任何内容。
在另一个选项卡(不是活动)中按返回键,Logcat 中仅显示“In MyTab”。
现在,我只想编写一个方法来监听 MyTab 中的 Back Keydown ,因为在另一个项目中, mainTab 有超过 3 个 subtabActivity 。
public class MyTab extends TabActivity;
public class SubTab extends TabActivity;
There is 2 tab defined in MyTab :
- setContent(new Intent(this, SubTab.class))
- setContent(R.id.view1)
Then write a method in MyTab :
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
Log.i("MyTab Back", "In MyTab ");
return true;
}
return super.onKeyDown(keyCode, event);
}
and the method in SubTab ,just change to Log.i("SubTab Back", "In SubTab ").
Problem:
Press Back Key in SubTab,Only "In SubTab" is shown in Logcat.
Delete the method in SubTab,then press Back Key nothing is shown in Logcat.
Press Back Key in another tab (not Activity), Only "In MyTab" is shown in Logcat.
NOW, I want to just write a method to listen Back Keydown in MyTab, because of in another project, the mainTab have more than 3 subtabActivity 。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试以下操作:
try the following:
试试这个:
try this :