1. 程式人生 > >android中RadioGroup點選radiobutton切換radiobutton的背景和文字顏色

android中RadioGroup點選radiobutton切換radiobutton的背景和文字顏色

首先radiogroup的佈局,重要的是設定radiogroup的三個屬性

android:background="@drawable/selector_speed_borrow_select_day"
                                    android:button="@null"
                                    android:textColor="@color/selector_select_day"

radiogroup的佈局

     <RadioGroup
                                android:id="@+
id/radiogroup_select_day"
android:layout_width="match_parent" android:layout_height="80px" android:layout_gravity="center_vertical" android:gravity="center_vertical|right" android:orientation="horizontal"
> <RadioButton android:id="@+id/radiobtn_fifteen" android:layout_width="170px" android:layout_height="70px" android:layout_marginRight="40px"
android:background="@drawable/selector_speed_borrow_select_day" android:button="@null" android:gravity="center" android:text="15天" android:textColor="@color/selector_select_day" /> <RadioButton android:id="@+id/radiobtn_thirty" android:layout_width="170px" android:layout_height="70px" android:background="@drawable/selector_speed_borrow_select_day" android:button="@null" android:gravity="center" android:text="30天" android:textColor="@color/selector_select_day" /> </RadioGroup>

點選背景改變的selector檔案
在res/drawable中selector_speed_borrow_select_day.xml,如果背景是圖片的話直接可以用圖片,如果背景是shape檔案

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 預設時的背景 -->
    <item android:drawable="@drawable/shape_gradient_white_stroke_blue" android:state_checked="false"/>
    <!-- 選擇時的背景 -->
    <item android:drawable="@drawable/shape_gradient_blue" android:state_checked="true"/>
</selector>

背景為shape檔案
預設時的背景檔案shape_gradient_white_stroke_blue.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle"
    android:color="@color/white"
    >

    <stroke
        android:dashGap="0.0dip"
        android:dashWidth="0.0dip"
        android:width="1px"
         android:color="@color/text_blue"
      />
    <solid android:color="@color/white" />
    <corners
       android:radius="120px"
        />
</shape>

選中時的背景檔案shape_gradient_blue.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle"
    android:color="@color/text_blue"
    >
    <solid android:color="@color/text_blue" />
    <corners
      android:radius="120px"
        />
    <stroke
        android:dashGap="0.0dip"
        android:dashWidth="0.0dip"
        android:width="1px"
        android:color="@color/text_blue"
        />
</shape>

點選按鈕文字變顏色的效果,首先在res下新建一個color檔案
這裡寫圖片描述
建立selector檔案selector_select_day.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">


    <item android:state_checked="true" android:color="@color/white"/>
    <!-- not selected -->
    <item android:color="@color/text_blue"/>


</selector>

至此大功告成
執行效果:
這裡寫圖片描述

相關推薦

androidRadioGroupradiobutton切換radiobutton背景文字顏色

首先radiogroup的佈局,重要的是設定radiogroup的三個屬性 android:background="@drawable/selector_speed_borrow_select_day"

Android如何在Fragment新增事件切換新的Fragment

此問題是我在Android開發中遇到,因為自己在網上一直沒有找到好的方法,後來摸爬滾打解決後,打算分享給大家。 首先,在遇到該問題時,我先預設讀者已經對Android開發中Fragment的使用已經有了一定的瞭解。 因為在fragment中無法使用F

AndroidListViewonItemClick不響應,onTouchonItemLongClick響應

這裡先說以下原因,我這裡的ListView不能點選,可能是跟執行緒更新UI有關,與獲取焦點之類無關。 程式裡的ListView設定了點選監聽setOnItemClickListener,長按監聽setOnItemLongClickListener,觸控監聽setOnTouchListener。

radiogroup按鈕切換頁面viewpager

radiogroup點選按鈕切換頁面viewpager main_radio_group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onChecked

AndroidListView事件失效的解決辦法

今天的第二篇部落格了,每一篇都只為了記錄我所做專案中遇到的一些問題。 現在我所做的專案是這樣的:我做了一個讀取手機通訊記錄的介面,使用了ListView控制元件,在ListView的item中添加了一個按鈕。程式碼編寫完成後,經過模擬器執行,發現ListView的setOn

Android 螢幕事件的實現

在android下,事件的發生是在監聽器下進行,android系統可以響應按鍵事件和觸控式螢幕事件,事件說明如下: 常用實現OnClickListener,OnTouchListener,OnFocu

音樂網站開發:實現按鈕切換頁面背景圖的功能

        最近這一星期在做一個簡單小型的音樂播放器網站,目前各種功能基本都已經實現,包括切換上一曲下一曲,播放與暫停,隨機播放單曲迴圈順序播放模式切換,一首播放完畢自動按模式切換至下一曲,載入單句歌詞及所有歌詞等功能。另外就是本篇部落格要介紹的功能了,點

Android TextView的效果之改變背景顏色

在學習Android過程中,我們有時想要TextView有點選效果,不是文字的變化而是背景顏色的變化,那麼怎麼來實現呢? 下面將介紹如何實現: 1.在res目錄下的drawable(此檔案是自己手動建立的)檔案下建立一個點選效果的檔案:tv_bg_selector.xml

或者按下背景或字型顏色修改使用及注意問題

用過selector的都知道,當我們為了更好使用者體驗,當點選button 或者觸控字型時 ,顏色需要出現相應變化,使用selector背景選擇器。 怎麼使用呢?簡單介紹下。 如果作為佈局或者控制元件背景時,在res下建立drawable資料夾,在drawabl

ViewPager+RadioGroup+RadioButton實現滑動切換頁面與按鈕切換頁面

一:效果圖: 二:程式碼: 首先  根據我們有幾個頁面就設定幾個Fragment, 主函式: public class MainActivity extends AppCompatActivity { private ViewPager viewpager;

Android Radiobutton超級好用的自定義背景文字顏色效果

Android開發中一些認證、篩選的功能需要用到單選按鈕,首先想到的是RadioGroup巢狀RadioButton,但是自帶的樣式真是不堪入目啊,功能實現了,如何能最大化的提升使用者體驗呢?這是一個問題……廢話不多說,畢竟開發人員也不太善於表達,還是直接看圖說話吧:首先思路

Android短視訊開發通過進行的命令操作所需原始碼合集

在短視訊操作中,“點選識別命令”的操作是非常常見的,幾乎一切命令都需要靠使用者點選來實現,因此,在Android短視訊開發中,雙擊點贊,點選評論、關注、分享,點選頭像進入主頁功能都是最常見的功能。 接下來,我將從程式碼的角度為大家展現這些功能的實現方式:   【雙擊點贊】通過此

android listview系列之item的事件及item佈局事件(四)

很多時候listview只顯示簡略資訊,我們需要點選子項去跳轉或在顯示詳細資訊的位置,將相關的詳細資訊顯示出來,listview提供了onItemClickListener()方法,在方法中我們可以執行我們需要的內容。 listview.setOnItem

Android 安卓 fragment+viewpager 仿qq介面 實現選單切換介面+滑動切換viewpager切換介面

原始碼地址 http://download.csdn.net/detail/zhangjm_123/7902245 最近寫了一個fragment+viewpager仿qq的app,先上圖                   如圖,介面底部有四個textview,分別

AndroidRecyclerview使用7----條目按鈕事件,在activity呼叫(介面回撥)

0引入Recyclerview的支援庫    compile 'com.android.support:recyclerview-v7:23.4.0' 1效果圖: 2程式碼: 2.1MainActivity中: <span style="font-size:18p

AndroidButton切換多個圖片顯示

最近在自學Android,編譯器用的是Android Studio,因為Eclipse + Android SDK + ADT配置了半天最後還報錯找不到dx.jar,關鍵這個包真實存在,實在受不了直接用AS來學了,但不得不說AS寫起來非常爽,咔咔咔 程式碼就出來了,但是。。

Android如何編寫圖片選擇器,實現按按鈕時按鈕的圖片或者顏色發生變化

1. 先看個圖,展示下我們要實現的效果:,點選按鈕的時候,按鈕變為這種顯示效果。 2. 其實這就是個圖片選擇器的編寫,當按鈕點選的時候,用另一張圖片去替換原有圖片,實現顏色的變化。 3. 具體步驟:     (1)首先在應用程式下→res目錄下建立一個folder,命名為d

Android那些事》——ListViewButton事件解決方案

    說一說寫這篇文章的原因,最近在做一個專案,有涉及到使用者回覆的功能     遇到的其中一個問題就是,如何為ListView中的Button設定點選事件?     在此將解決方案分享給大家

Android開發按鈕事件的監聽

在Android開發中用到是很正常的事情。那麼為按鈕點選事件新增監聽器是我們開發過程中遇到的常見問題。 1、直接在onCreate( )方法中新增 匿名內部類作為事件監聽器類 protected void onCreate(Bundle savedIn

android listview adapter設定直接position被重用問題解決

package com.sohu.focus.middleware.adapter; import android.view.View; import android.view.View.OnClickListener; public abstract class OnConvertViewClickList