首页 > 代码库 > android控件布局 ToggleButton按钮 图片和文字

android控件布局 ToggleButton按钮 图片和文字

ToggleButton控件具有checked属性对于要切换状态的功能按钮来说十分好用

这里以phone的开启DTMFTwelveKeyDialer的按钮为例 展示其效果和布局

 

activity_main.xml

<LinearLayout 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"    android:orientation="vertical"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context=".MainActivity" >       <ToggleButton           android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:background="@drawable/button_incall"            android:drawableTop="@drawable/icon_keyboard_bg"            android:textOn="键盘"            android:textOff="键盘"            android:textSize="32dip"            android:textColor="#FFFFFF"        />        </LinearLayout>

其中drawableTop引用了icon_keyboard_bg.xml

icon_keyboard_bg.xml

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">        <item android:state_pressed="true"        android:drawable="@drawable/icon_keyboard_up_pressed"        />        <item android:state_checked="true"        android:drawable="@drawable/icon_keyboard_up"        />        <item android:state_checked="false"        android:drawable="@drawable/icon_keyboard_down"        />        <item        android:drawable="@drawable/icon_keyboard_down"        /></selector>

这样 即可实现点击按钮时三种不同状态图片的切换了

 

1. 自然状态下效果

 

2.按下按钮效果

 

3.属性checked="true"的效果

 

实际使用中应该注意国际化的问题  字符串、间距、尺寸的大小不应使用硬编码