Android底部导航栏点击切换变色

 底部导航栏切换是由RadioGroup中的RadioButton点击事件切换的,其实之前的文章中已经介绍了,但是在这里详细说明一下。

1.1 底部导航栏的布局文件bottom_bar.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/bottom_bar"
    android:paddingTop="0dp"
    android:paddingBottom="0dp"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:background="@color/bottom_bar_background"
    android:gravity="center_horizontal"
    android:orientation="horizontal"
    android:tint="@color/qmui_config_color_gray_4">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="1dp"
            android:background="@color/qmui_config_color_10_pure_black"
            />
        <RadioGroup
            android:id="@+id/main_radiogroup"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:orientation="horizontal">

            <RadioButton
                android:id="@+id/main_rab_house"
                android:checked="true"
                android:text="主页"
                style="@style/main_rbt"
                android:drawableTop="@drawable/home_drawable"/>

            <RadioButton
                android:id="@+id/main_rab_connect"
                style="@style/main_rbt"
                android:text="连接"
                android:drawableTop="@drawable/dashboard_drawable"
                />
            <RadioButton
                android:id="@+id/main_rab_wifi"
                style="@style/main_rbt"
                android:text="配置"
                android:drawableTop="@drawable/notification_drawable"/>
        </RadioGroup>

    </LinearLayout>

</LinearLayout> 
每个RadioButton的 drawableTop 表示文字上面的图片,我们在drawable文件下分别建 home_drawable.xml,d ashboard_drawable.xml notification_drawable.xml 文件。其中home_drawable.xml文件如下:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:state_checked="true" android:drawable="@drawable/ic_home_gray_24dp" ></item>
    <item android:state_checked="false" android:drawable="@drawable/ic_home_blue_24dp"></item>
</selector>
 表示RadioButton不同状态图片的颜色变化。其他两个文件内容也是一样,这样就能实现点击RadioButton改变

颜色,不需要再代码中显示的改变颜色。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值