1. 程式人生 > >【android】如何用RedioGroup實現ios中TabBar的效果·

【android】如何用RedioGroup實現ios中TabBar的效果·

一、xml設定

<RadioGroup

android:id="@+id/rg_tab"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:orientation="horizontal"

android:weightSum="3" >

<RadioButton

android:id="@+id/rb_firstpage"

style="@style/main_tab_bottom"

android:checked="true"

android:drawableTop="@drawable

/bar_home_selector"

android:drawablePadding="3dp"

android:paddingTop=“10dp"

android:paddingBottom=“5dp"

android:text="首頁"

/>

<RadioButton

android:id="@+id/rb_service"

android:drawableTop="@drawable/bar_service_selector"

style="@style/main_tab_bottom"

android:drawablePadding="3dp"

android:paddingTop="10dp"

android:paddingBottom="5dp"

android:text="服務"

/>

<RadioButton

android:id="@+id/rb_aboutus"

android:drawableTop="@drawable/bar_setting_selector"

style="@style/main_tab_bottom"

android:drawablePadding="3dp"

android:paddingTop=“10dp"

android:paddingBottom="5dp"

android:text="個人"

/>

</RadioGroup>

二、bar_home_selector檔案的編寫,其餘類同,放在res/drawable,自己建立

<?xml version="1.0" encoding="utf-8"?>

<item android:drawable="@drawable/dh_lan_1_03" android:state_pressed="true"></item>

<item android:drawable="@drawable/dh_lan_1_03" android:state_checked="true"></item>

<item android:drawable="@drawable/dh_hui_1_03" android:state_checked="false"></item>

</selector>

三、main_tab_bottom檔案的編寫,放在了res/values/styles中

<style name="main_tab_bottom">

<!-- <item name="android:drawablePadding">-1dp</item> -->

<item name="android:textColor">@color/bottom_text_color</item>

<item name="android:textSize">11dp</item>

<item name="android:gravity">center</item>

<item name="android:background">@drawable/transparent</item>

<item name="android:layout_width">0dp</item>

<item name="android:layout_weight">1.0</item>

<item name="android:layout_height">fill_parent</item>

<!-- 去按鈕立體效果 -->

<item name="android:button">@null</item>

<item name="android:singleLine">true</item>

</style>