android实现底部导航栏实现底部导航栏
底部导航栏我选择用FragmentTabHost+Fragment来实现,这个方法比较好用,代码量也不多
首先是开始的activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="${relativePackage}.${activityClass}" >
<FrameLayout
android:id="@+id/main_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/main_tab"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >
</FrameLayout>
<view
android:id="@+id/main_tab"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
class="android.support.v4.app.FragmentTabHost" />
</RelativeLayout>
也可以直接在xml文件里面写
<android.support.v4.view.FragmentTabHost >
</android.support.v4.view.FragmentTabHost>
这xml文件就一个view加一个tab view用来显示碎片,tab用来放置底部按钮的数量
再来是tab_foot.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F6F6F6"
android:gravity="center"
android:orientation="vertical" >
<ImageView
android:id="@+id/foot_iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/home1" />
<TextView
android:id="@+id/foot_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:text="首页"
android:textColor="@color/tab_color" />
</LinearLayout>
这是每个底部按钮的布局设置的xml文件
再来是MainActivity的代码
package com.gjn.mynavigation;