首页 > 系统 > Android > 正文

Android TabWidget底部显示效果

2019-12-12 03:27:32
字体:
来源:转载
供稿:网友

TabHost控件默认使用LinearLayout包裹TabWidget和FrameLayout,布局文件如下:

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"  android:id="@android:id/tabhost"  android:layout_width="match_parent"  android:layout_height="match_parent" >   <LinearLayout   android:layout_width="match_parent"   android:layout_height="match_parent"   android:orientation="vertical" >    <TabWidget    android:id="@android:id/tabs"    android:layout_width="match_parent"    android:layout_height="wrap_content" >   </TabWidget>    <FrameLayout    android:id="@android:id/tabcontent"    android:layout_width="match_parent"    android:layout_height="match_parent" >   </FrameLayout>  </LinearLayout> </TabHost> 

这样TabWidget显示在顶部,如果想把TabWidget放到底部有三种方式。

方式一:将TabHost中默认的LinearLayout换成RelativeLayout,并给TabWidget添加Android:layout_alignParentBottom="true"

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"  android:id="@+id/tabhost"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:layout_alignParentLeft="true"  android:layout_alignParentTop="true" >  <RelativeLayout   android:layout_width="match_parent"   android:layout_height="match_parent">    <TabWidget    android:id="@android:id/tabs"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:layout_alignParentBottom="true">   </TabWidget>      <FrameLayout    android:id="@android:id/tabcontent"    android:layout_width="match_parent"    android:layout_height="match_parent" >   </FrameLayout>  </RelativeLayout> </TabHost> 

方式二:

1、将LinearLayout中TabWidget和FrameLayout交换位置
2、设置FrameLayout的属性:android:layout_weight="1" android:layout_height="0dp"

<TabHost xmlns:android="<a target=_blank href="http://schemas.android.com/apk/res/android" rel="external nofollow" >http://schemas.android.com/apk/res/android</a>"  android:id="@+id/tabhost"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:layout_alignParentLeft="true"  android:layout_alignParentTop="true" ></p><p> <LinearLayout   android:layout_width="match_parent"   android:layout_height="match_parent"   android:orientation="vertical" >    <FrameLayout    android:id="@android:id/tabcontent"    android:layout_width="match_parent"    android:layout_height="0dp"    android:layout_weight="1" >   </FrameLayout>      <TabWidget    android:id="@android:id/tabs"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:layout_alignParentBottom="true">   </TabWidget>  </LinearLayout> </TabHost>

方式三:

1、将TabWidget移动到LinearLayout标签以下             

2、在FrameLayout中加入属性:android:layout_gravity="top"             

3、在TabWidget中加入属性:android:layout_gravity="bottom"

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"  android:id="@+id/tabhost"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:layout_alignParentLeft="true"  android:layout_alignParentTop="true" >   <LinearLayout   android:layout_width="match_parent"   android:layout_height="match_parent"   android:orientation="vertical" >    <FrameLayout    android:id="@android:id/tabcontent"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:layout_gravity="top" >   </FrameLayout>  </LinearLayout>  <TabWidget   android:id="@android:id/tabs"   android:layout_width="match_parent"   android:layout_height="wrap_content"   android:layout_gravity="bottom">  </TabWidget> </TabHost> 

以上三种方式在Android4.2下测试通过。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表