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的形式,即可实现啦!

找时间尝试~

本文转自老Zhan博客园博客,原文链接:http://www.cnblogs.com/mybkn/archive/2012/05/18/2507789.html,如需转载请自行联系原作者

相关文章
|
3月前
|
Android开发 开发者
Android UI设计: 请解释Activity的Theme是什么,如何更改应用程序的主题?
Android UI设计: 请解释Activity的Theme是什么,如何更改应用程序的主题?
42 1
|
3月前
|
数据库 Android开发 开发者
Android基础知识:请解释Activity的生命周期。
Android基础知识:请解释Activity的生命周期。
43 2
|
3月前
|
Linux 调度 Android开发
【系统启动】Kernel怎么跳转到Android:linux与安卓的交界
【系统启动】Kernel怎么跳转到Android:linux与安卓的交界
49 0
|
2月前
|
Android开发
[Android 四大组件] --- Activity
[Android 四大组件] --- Activity
22 1
|
3月前
|
Android开发
Android基础知识:什么是Fragment?与Activity的区别是什么?
Android基础知识:什么是Fragment?与Activity的区别是什么?
286 54
|
3月前
|
Linux 调度 Android开发
Kernel怎么跳转到Android:linux与安卓的交界
Kernel怎么跳转到Android:linux与安卓的交界
36 0
|
4月前
|
XML 安全 Java
Android Studio App开发入门之活动Activity中为活动补充附加信息讲解及实战(附源码 超详细必看)
Android Studio App开发入门之活动Activity中为活动补充附加信息讲解及实战(附源码 超详细必看)
35 0
|
4月前
|
Android开发
Android Studio App开发入门之在活动之间传递消息(附源码 超详细必看)(包括显示和隐式Intent,向上一个和下一个Activity发送数据)
Android Studio App开发入门之在活动之间传递消息(附源码 超详细必看)(包括显示和隐式Intent,向上一个和下一个Activity发送数据)
45 0
|
Android开发
Android back键及backWebview模式跳转详解
首先,来看一下关于Android home键和back键区别 back键 Android的程序无需刻意的去退出,当你一按下手机的back键的时候,系统会默认调用程序栈中最上层Activity的Destroy()方法来,销毁当前Activity。
1048 0
|
3天前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
24 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库