`
hecal
  • 浏览: 78486 次
社区版块
存档分类
最新评论

tabhost里解决按键事件捕获的问题

阅读更多
这几天参照好多人的代码,改造了一个小程序,咱也使用一下TabHost,结果就是返回按键捕获不到。
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
exitSelect();
return true;
}
return super.onKeyDown(keyCode, event);
}
在网上找了半天,终于找到一个SB问触屏不能捕获的问题,触屏不能捕获就是跟onKeyDown类似了。看到好多人帮忙解决,最后说在众人的帮助下TMD解决了,真让人义愤填膺,没说怎么解决的。真是浪费我的时间和上网费。我接着用csdn的帐户登陆在最后留言,你这样的还保密,看以后谁帮你分析,大体意思是这样的。此人帐户还是不提了,MD我再找,就不信没人出过问题,终于找到一个哥们还是姐妹的说了一句,在tabhost里onKeyDown可能有问题,应该用dispatchKeyEvent。
靠,一试果然解决。
public boolean dispatchKeyEvent(KeyEvent event) {
if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) {
exitSelect();
return true;
}
return super.dispatchKeyEvent(event);
}

前面说了些脏话,看到博客的朋友对不起了,我只是想说懂得分享的人别人才愿意帮你解决。
我很少写这些东西,大家都在写,今天写了一把,终于有自己的原创了。 
2
0
分享到:
评论
4 楼 zhangjie3140 2014-02-21  
感谢分享
3 楼 肖默it 2012-09-11  
解决了我的问题,感谢楼主的分享!
2 楼 hecal 2012-08-21  
太感谢了~~
1 楼 guogzhao 2012-07-17  
注意在if判断中要加一个event.getAction() == KeyEvent.ACTION_DOWN判断,因为按键有两个事件ACTION_DOWN和ACTION_UP,也就是按下和松开,如果不加这个判断,代码会执行两遍

相关推荐

    解决TabHost下面白线

    本文将详细介绍如何使用TabHost实现分页应用,并针对“TabHost下面白线”这一问题提供解决方案。 首先,让我们理解TabHost的工作原理。TabHost是一个容器,它包含一个TabWidget来展示各个Tab标签,以及一个...

    安卓 tabhost嵌套tabhost

    在Android开发中,TabHost是一个非常重要的组件,用于创建...然而,对于旧版Android系统或特定需求,TabHost嵌套依然是一种可行的解决方案。要确保良好的用户体验,开发者应当根据项目需求选择最合适的选项卡实现方式。

    tabhost里面嵌套viewpager

    为了解决这个问题,开发者通常会将`TabHost`与`ViewPager`配合使用,使得每个`Tab`下面都可以有一个`ViewPager`来承载多个可滑动的页面。 以下是关于`TabHost`和`ViewPager`集成的关键知识点: 1. **TabHost的基本...

    TabHost中填充自定义ListView

    在Android开发中,`TabHost` 是一个非常重要的组件,用于实现多标签页面的切换,而将自定义的`ListView`填充到`TabHost`中则可以构建出复杂的交互界面。下面我们将详细探讨如何实现这一功能。 首先,我们需要了解`...

    Android 嵌套TabHost示例

    在Android应用开发中,TabHost是一个非常重要的组件,它用于创建多标签的界面,让用户能够通过不同的标签页浏览和切换不同的功能或内容。本示例是关于如何在Android中实现嵌套的TabHost,即两个层级的TabHost,类似...

    TabHost两种实现方式

    在Android开发中,TabHost是一个重要的组件,用于创建带有...尽管现在有更多先进的组件可用,但掌握其工作原理有助于开发者更好地理解和解决问题。通过XML布局或纯代码方式,开发者可以根据项目需求灵活选择实现方式。

    TabHost的各种实现方式

    这通常涉及到重写`TabHost.OnTabChangeListener`接口,监听Tab的切换事件,然后在事件处理方法中更新自定义View的状态。 6. **使用Action Bar的Tab模式**: - 在Android 3.0及以上版本,Action Bar提供了一种新的...

    TabHost+ViewPager实现滑动tabhost

    4. 当Tab切换时,让ViewPager跟随切换:监听TabHost的选中事件,如`tabHost.setOnTabChangedListener()`,在监听器中调用ViewPager的`setCurrentItem()`方法。 **源码解析:** 在`ViewPaperTabhostTest`项目中,...

    TabHost标签

    ### TabHost的事件监听 为了响应用户点击标签的行为,可以为`TabHost`添加一个`OnTabChangeListener`。当用户切换标签时,会触发`onTabChanged()`方法: ```java tabHost.setOnTabChangedListener(new TabHost....

    TabHost的使用方法

    在Android开发中,TabHost是一个非常重要的组件,用于创建具有多个Tab标签的界面,每个标签可以展示不同的内容或活动(Activity)。本教程将详细介绍如何使用TabHost,特别适合初学者和教学场景,例如构建一个模拟...

    tabhost案例

    通过分析源代码和资源文件,我们可以更深入地了解这种结合使用的方式,以及在实际开发中可能遇到的问题和解决方案。 总结来说,"slidingmenu与tabhost的结合使用"案例展示了如何在Android应用中构建一个多层级、多...

    android Tabhost使用Demo

    可以通过监听TabHost的`onTabChanged()`回调来捕获Tab切换事件,执行相应的逻辑。 6. **在Android Studio中的实践** 如`TabhostActivitys`这个文件名所示,这个Demo可能包含了多个与TabHost相关的Activity实现,...

    用ActivityGroup解决TabHost中多个Activity跳转问题

    为了解决这些问题,开发者引入了ActivityGroup,它允许在一个TabHost内嵌套多个Activity,使得在同一层级的Activity间切换更为便捷。 ActivityGroup是Android提供的一个特殊类型的Activity,它允许我们在一个...

    可以横向拖动的tabHost

    当用户在TabHost上滑动手指时,我们可以捕获这些事件并判断是横向滑动还是垂直滑动。 2. **动画效果**:为了让标签平滑地从一个位置移动到另一个位置,我们需要使用Android的动画系统。可以创建一个...

    listview和viewpager及tabhost的touch事件冲突的解决

    listview和viewpager及tabhost的touch事件冲突的解决,至少可以实现在重写父viewGroup的onintercpettouchevent的实现拦截和重写子viewGroup的onintercpettouchevent实现不允许拦截。

    tabhost单例模式小例子

    例如,TabHost作为一个全局导航工具,通常需要在整个应用中保持一致,避免多次实例化导致的问题。 下面我们将详细讲解如何在TabHost中实现单例模式: 1. 创建TabHost的Singleton类: 首先,我们需要定义一个名为`...

    android tabhost用法 源码

    在Android开发中,TabHost是实现标签栏切换界面的一个重要组件。TabHost允许开发者创建一个包含多个Tab的界面,每个Tab都可以关联到不同的活动(Activity)或者帧布局(FrameLayout)。下面将详细介绍TabHost的使用...

    TabHost的简单使用

    总结来说,TabHost是Android中构建多选项卡界面的一种方式,虽然现在有更现代的解决方案,但在理解Android历史和一些老项目中,掌握TabHost的使用仍然是必要的。通过TabHost和相关组件,开发者可以轻松地为用户提供...

    嵌套TabHost

    4. **监听Tab切换事件**:在主TabHost和子TabHost中都需要监听Tab的切换事件,以便在切换时更新相应的视图。 5. **布局设计**:在XML布局文件中,需要正确放置TabHost,通常使用`<TabHost>`标签作为根元素,并在其...

    andorid中TabHost的使用

    开发过程中,可以借助Android Studio的布局预览功能查看TabHost的效果,同时利用调试工具检查运行时的TabHost状态,以便找出潜在问题。 总结,TabHost是构建多标签界面的关键组件,掌握其使用方法对于开发高效、...

Global site tag (gtag.js) - Google Analytics