Android初级之组件基础05-ImageButton

ImageButton继承于ImageView,顾名思义,它是将一张图片来作为一个可供点击的按钮。
1.主要属性
(1)可以用其android:src属性或者setImageResource(int sourceId)方法来指定所使用的图片。
(2)可以用setAlpha(int alpha)设置ImageButton图片的透明度(注意不是背景图片的)。alpha 透明值0~255,0为完全透明,255为完全不透明。

2.设置不同状态的显示
为了表示不同的按钮状态,我们通常通过selector(选择器)为ImageButton定义各种状态下的不同图片。下面是Android API中一个示例:
<?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/button_pressed" /> <!-- pressed -->
    <item android:state_focused="true" android:drawable="@drawable/button_focused" /> <!-- focused -->
    <item android:drawable="@drawable/button_normal" /> <!-- default -->
</selector>

保存上面的XML内容到res/drawable/文件夹下,命名为image_button_selector.xml,并将该文件名作为一个参数“@drawable/image_button_selector”设置到ImageButton的 android:src属性。
注意:
(1)state_pressed、state_focused代表ImageButton被按下去、获取到焦点时的状态。
(2)item元素的顺序很重要,因为是根据这个顺序判断是否适用于当前按钮状态,这也是为什么正常(默认)状态指定的图片放在最后,是因为它只会在pressed和focused都判断失败之后才会被采用。

*应用技巧
1.图片按钮被点击时的按下效果
可以通过设置图片的透明度达到显示点击时的按下效果。
imageButton.setOnTouchListener(new View.OnTouchListener()){
	public boolean onTouch(View v,MotionEvent event){
		if(event.getAction()==MotionEvent.ACTION_DOWN){
			imageButton.getDrawable().setAlpha(150);
			imageButton.invalidate();	//重绘按钮
		} else {
			imageButton.getDrawable().setAlpha(255)
			imageButton.invalidate();
		}
		return false;
	}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值