1. 范例说明
- ImageButton是有背景图片的按钮,要设置ImageButton背景图有许多方法,此程序使用的方法是ImageButton.setImageResource(),需要传递的参数是res/drawable下面的ResourceID。
- 除了设置背景图片的方法外,程序需要使用onFocusChange与onClick等作为按钮事件单击后的处理,最后通过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.视频讲解与高清下载地址