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


    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.视频讲解与高清下载地址

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

  • 相关阅读:
    [z]单次遍历带权随机选取
    [Z]CiteSeer统计的计算机领域的期刊和会议的影响因子
    神奇的make自动生成include file的功能
    简记特定容器list和forward_list算法
    插入、流和反向迭代器
    参数绑定
    保研流程记录
    VS2019界面透明、主题修改和导出设置
    C++11 lambda表达式小结
    springboot-mybatis-demo遇到的坑
  • 原文地址:https://www.cnblogs.com/eyeandroid/p/2765680.html
Copyright © 2020-2023  润新知