android开发之TabActivity

android开发之TabActivity

 

TabActivity,顾名思义就是提供了一个具有多个Tab的activity。类似于android的拨号界面。

 

项目中用到了TabActivity,结果带来了一些烦恼。

首先是在TabActivity中嵌入3个ListActivity,发现不够用,其中一个需要作成折叠列表,于是引入了 ExpandableListView,结果引发了悲剧。屏幕旋转时崩溃。

经过Google发现,是android的一个BUG,因为 ExpandableListView 使用了ListView相同的资源ID,所以在使用TabActivity的时候,如果同时使用了 ListActivity 和 ExpandableListView, 就会在旋转屏幕后载入资源时发生ClasscastException。原因找到了。解决的办法有很多种,有位大哥重写了一个ListActivity以解决此问题。不过我的办法是 避免同时使用ExpandableListView 和 ListActivity。毕竟ListActivity可以通过自己写一个ListView来实现。在2.1-update1下运行通过。

 

在查找问题解决方法时,也看到一些回应说,尽量不要用TabActivity,看来TabActivity有点儿讨人嫌的意思。

 

参考,

1.http://code.google.com/p/android/issues/detail?id=2732 这里有详细的记录和ExpandableListView 专用的ListActivity源码,我没有测试过。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值