android:解决单个tab内部的activity跳转

这里不是指tab的切换问题,而是单个tab中的内部跳转

比如有一个tabWidget,比如上面有4个a,b,c,d的Activity,然后a上面有一个按钮,对要使其实现跳转到ActivityX,若代码如下的话:
Intent intent = new Intent(aActivity.this,xxActivity.class);

startActivity(intent);

finish();

那么执行后,就只是进入了ActivityX,但下面的tabWidget也消失了

我们要的效果是切换到ActivityX,而又保持有下面的tabWidget,这类似于iphone中的UItarbar里的导航功能。

 

网上求救这效果的很多,但解决方法也比较凌乱。

 

解决方案一:Activity + TabHost + ActivityGroup

但是ActivityGroup 已经被Google弃用了,其官方建议使用Fragment代替,所以这种方法我也没有尝试。

ActivityGroup 的具体可以参考

Android TabHost中切換Activity 

 

方案二:Fragment + TabHost + FragmentActivity

fragment 是3.0之后才有的特性,不过在此之前的SDK可以外加扩展包(android-support-v4)实现其功能。

fragement的使用 可以参考http://marshal.easymorse.com/?s=fragment

 

mHost.addTab(mHost.newTabSpec("Tab1").setIndicator("Tab1").setContent(newIntent(MainTabActivity.this, FragmentActivity1.class)));

这样就使tab为一个FragemntActivity,在FragemntActivity中加入Fragment即可进行管理

实现tab的可参考

Android Tabhost with FragmentActivity

 

三:猜想:FragmentActivity

之前使用Fragment实现了一个Master-Details的界面,类似于iphone中的UISplitView,其原理是通过FragmentActivity的界面分成左右两片,然后分别对左右添加管理Fragment,即可实现。其右边也可实现activity的跳转功能。由此想到,如果把FragmentActivity的视图分成上下两片,下面的做成tab的形式,即可实现啦!

找时间尝试~

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值