Android ImageButton 使用Selector的简单示例
来源:互联网 发布:阿油的淘宝店铺叫什么 编辑:程序博客网 时间:2024/04/29 12:18
一般情况下,我们可以用ImageButton来显示一个Button按钮。然而,有些时候我们想按钮的状态发生变化,比如按下前是一个样子,按下后又是另一个样子,Android允许我们改变按钮的形象取决于不同的状态,如按钮是集中或按钮被按下。下面具体讲述如何实现:
P.S This project is developed in Eclipse 3.7, and tested with Android 2.3.3
1. 往 Resources里面添加图片
准备三张不同Button状态的图片,然后把它放入 “resource/drawable” 。
- button_normal_green.png – 默认的图像Button.
- button_focused_orange.png – 当按钮被关注,例如,当电话键盘移动(焦点)在这个按钮时显示。
- button_pressed_yellow.png – 当按钮被按下时显示
2. 为不同的Button状态添加 Selector
在“res/drawable/”里面创建一个新的XML布局文件,这里我们取名为“
new_button.xml
“。这个XML文件定义按钮的状态是属于哪种Button图像。File : res/drawable/new_button.xml
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/button_pressed_yellow" android:state_pressed="true" /> <item android:drawable="@drawable/button_focused_orange" android:state_focused="true" /> <item android:drawable="@drawable/button_normal_green" /></selector>
3.添加Button
打开 “res/layout/main.xml”布局文件,添加一个正常的button,然后为这个button添加一个背景图像File : res/layout/main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <Button android:id="@+id/imageButtonSelector" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/new_button" />//通过这个方式来实现 </LinearLayout>
4.Activity代码如下
一个正常的按钮和一个简单的点击侦听器
package com.demo.app;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Toast;public class AppTestActivity extends Activity{Button imageButton;@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);imageButton = (Button) findViewById(R.id.imageButtonSelector);imageButton.setOnClickListener(new OnClickListener(){public void onClick(View v){Toast.makeText(AppTestActivity.this, "eee", Toast.LENGTH_SHORT);}});}}
5.运行
运行该应用程序1. 结果如图, 默认的 button. (button_normal_green.png)
2. Button 聚焦. (button_focused_orange.png)
2. Button 被按下. (button_focused_orange.png)
这个应用其实还是很广泛的,比如播放器的控制,游戏的状态等等。
- Android ImageButton 使用Selector的简单示例
- Android ImageButton及selector的使用
- ImageButton使用selector的错误
- Android 控件背景图片和imagebutton的使用(selector)
- Android ImageButton Selector例子
- Android ImageButton Selector 案例
- Android-ImageButton的使用
- Android-ImageButton的使用
- Android-ImageButton的使用
- android imagebutton的使用
- Android中使用selector动态改变imageView或ImageButton的背景和在GridView中应用
- Android中使用selector动态改变imageView或ImageButton的背景和在GridView中应用
- Android中selector的简单使用
- Android开发selector的简单使用
- android 利用selector设置ImageButton不同状态下的背景图片
- selector使用与ImageButton单击按钮图片效果的实现
- ImageButton控件的使用[WEB学习示例]
- android ImageButton示例
- 创建和使用位图和图标
- LookupPrivilegeValue
- 三种JS对话框
- HibernateTemplate 常用方法
- 第六堂课后作业
- Android ImageButton 使用Selector的简单示例
- iOS KVC KVO KVB
- 树的重心
- UVA 10035
- Extjs,是免费的吗?
- [开心学php100天]第四天:完爆php魔力函数
- exec函数族实例解析
- 为 WPF 应用程序设计用户界面
- Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (四) —— ContentProvider