【Android每日一讲】2012.11.12 设计具有背景图的按钮 - ImageButton的焦点及事件处理

1. 范例说明

  • ImageButton是有背景图片的按钮,要设置ImageButton背景图有许多方法,此程序使用的方法是ImageButton.setImageResource(),需要传递的参数是res/drawable下面的ResourceID
  • 除了设置背景图片的方法外,程序需要使用onFocusChangeonClick等作为按钮事件单击后的处理,最后通过TextView来显示目前图片按钮的状态。

2. 运行结果


3. 编写代码

		mImageButton1.setOnFocusChangeListener(new OnFocusChangeListener() {
			public void onFocusChange(View arg0, boolean isFocused) {
				// TODO Auto-generated method stub
				/* 若ImageButton状态为onFocus改变ImageButton的图片 * 并改变textView的文字 */
				if (isFocused == true) {
					mTextView1.setText("图片按钮状态为:Got Focus");
					mImageButton1.setImageResource(R.drawable.iconfull);
				}
				/* 若ImageButton状态为offFocus改变ImageButton的图片 *并改变textView的文字 */
				else {
					mTextView1.setText("图片按钮状态为:Lost Focus");
					mImageButton1.setImageResource(R.drawable.iconempty);
				}
			}
		});
		/* 透过onClickListener来响应ImageButton的onClick事件 */
		mImageButton1.setOnClickListener(new OnClickListener() {
			public void onClick(View v) {
				// TODO Auto-generated method stub
				/* 若ImageButton状态为onClick改变ImageButton的图片 * 并改变textView的文字 */
				mTextView1.setText("图片按钮状态为:Got Click");
				mImageButton1.setImageResource(R.drawable.iconfull);
			}
		});
		/* 透过onClickListener来响应Button的onClick事件 */
		mButton1.setOnClickListener(new OnClickListener() {

			public void onClick(View v) {
				// TODO Auto-generated method stub
				/* 若Button状态为onClick改变ImageButton的图片 * 并改变textView的文字 */
				mTextView1.setText("图片按钮状态为:Lost Focus");
				mImageButton1.setImageResource(R.drawable.iconempty);
			}
		});

4. 扩展学习与作业

androidButton ImageButton区别

http://www.eyeandroid.com/thread-7064-1-1.html

AndroidImageButton Selector例子

http://www.eyeandroid.com/thread-6645-1-1.html

作业:使用selector来改变ImageButton的背景图片

5.视频讲解与高清下载地址

http://www.eyeandroid.com/thread-10259-1-1.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值