zoukankan      html  css  js  c++  java
  • 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的形式,即可实现啦!

    找时间尝试~

  • 相关阅读:
    数据库操作--获取空数据
    常用的css属性
    有序列表与无序列表
    表格标签table
    Div 块 盒子
    border边框 css属性
    IMG
    html中a标签与img标签
    CSS
    css 网页中如何嵌套style样式?
  • 原文地址:https://www.cnblogs.com/mybkn/p/2507789.html
Copyright © 2011-2022 走看看