`
lemo
  • 浏览: 91721 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ImageButton的焦点和事件处理

阅读更多
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;
/**
 * ImageButton的焦点和事件处理
 *
 */
public class ActivityMain extends Activity {
	private ImageButton myImageButton ;
	private Button myButton;
	private TextView myTextView;
	
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        //创建三个组件
        myImageButton = (ImageButton)findViewById(R.id.myImageButton);
        myButton = (Button)findViewById(R.id.myButton);
        myTextView = (TextView)findViewById(R.id.myTextView1);
        
        //通过OnFocusChangeListener来响应ImageButton的onFocus事件
        myImageButton.setOnFocusChangeListener(new ImageButton.OnFocusChangeListener() {
        	public void onFocusChange(View v, boolean hasFocus) {
        		//如果ImageButton得到焦点onFocus则改变ImageButton的图片
        		if(hasFocus==true) {
        			//更改状态说明
        			myTextView.setText("图片按钮状态为:Got Focus");
        			//更改按钮背景图片
        			myImageButton.setImageResource(R.drawable.iconfull);
        		} else {
        			myTextView.setText("图片按钮状态为: Lost Focus");
        			myImageButton.setImageResource(R.drawable.iconempty);
        		}
        	}
        });
        
        //通过onClickListener来响应ImageButton的onClick事件
        myImageButton.setOnClickListener(new ImageButton.OnClickListener(){
        	public void onClick(View v) {
        		//如果ImageButton状态为onClick则改变ImageButton的图片和说明
        		myTextView.setText("图片按钮状态为: Got Click");
        		myImageButton.setImageResource(R.drawable.iconfull);
        	}
        });
        
        //通过onClickListener来响应Button的onClick事件
        myButton.setOnClickListener(new Button.OnClickListener(){
        	public void onClick(View v) {
        		//如果Button状态为onClick改变ImageButton图片
        		myTextView.setText("图片按钮状态为:Lost Focus");
        		myImageButton.setImageResource(R.drawable.iconempty);
        	}
        });
    }
}

  • 大小: 32.5 KB
分享到:
评论

相关推荐

    android 具有背景图片的按钮 ImageButton的焦点事件以及事件处理

    // 返回true表示已处理事件,防止进一步分发 } }); ``` 为了使`ImageButton`在焦点变化时有明显的视觉反馈,我们可以改变其背景或边框的颜色、大小、透明度等属性。例如,通过设置不同的选择器(`selector`)资源...

    ImageButton的焦点及事件处理

    总结来说,`ImageButton`的焦点处理和事件响应是Android UI开发中的基础操作。通过定义和应用状态选择器,我们可以根据用户交互改变组件的视觉反馈,同时通过监听点击事件来执行相应的业务逻辑。这不仅提升了用户...

    ImageButton 控件应用.rar

    总结,`ImageButton`控件是Android开发中实现图文并茂的交互按钮的关键工具,通过合理配置其属性和处理事件,可以创建出各种富有视觉吸引力且易用的用户界面。在实践中,我们应当关注其适配性、可访问性和性能优化,...

    ImageButton图片按钮

    在Android开发中,`ImageButton`是一个非常常用的组件,它继承自`ImageView`,并增加了点击事件处理的功能。本文将深入探讨`ImageButton`的基本概念、使用方法、属性设置以及实际应用场景,帮助开发者更好地理解和...

    安卓Android源码——ImageButton.rar

    总结,`ImageButton` 在 Android 应用开发中是一个强大的工具,通过源码学习我们可以了解到它的绘图机制、事件处理以及如何进行自定义扩展。理解这些细节有助于我们编写出更高效、更易用的界面。在实际开发中,合理...

    android ImageButton示例

    在本示例中,我们将深入探讨`ImageButton`的使用方法,包括如何在布局文件中声明、如何设置图片资源、如何处理点击事件,以及一些实用的属性和技巧。 首先,`ImageButton`在XML布局文件中的声明方式与`ImageView`...

    11-android ImageButton 图片按钮

    在Android开发中,`ImageButton`是一个非常常用的组件,它继承自`ImageView`,并增加了点击事件处理的功能,使得我们可以将图片作为按钮使用。本篇主要探讨`ImageButton`的使用、特性以及与源码相关的知识。 首先,...

    Android下实现win8风格的imageButton

    这通常涉及自定义View类,扩展Android的默认ImageButton类,并添加必要的触摸事件处理和动画逻辑。 2. **触摸事件处理**:当用户触摸按钮时,应响应滑动和点击事件。你可以使用Android的`MotionEvent`类来监听触摸...

    Android 自定义控件DemoCustomView-ImageButton

    默认情况下,`ImageButton`具有透明背景,焦点时显示边框。 3. **绘制逻辑**:自定义控件往往需要重写`onDraw()`方法来实现自己的绘图逻辑。在这个练习中,可能包括了修改按钮的形状、添加自定义边框、更改默认的按...

    Android 点击ImageButton时有“按下”的效果的实现

    无论是通过`OnTouchListener`手动处理事件,还是利用`Selector`资源实现自动化,都是提高应用交互体验的有效手段。希望本文内容能对你的Android开发工作有所帮助,如果你有其他相关问题,欢迎继续探索和学习。

    andriod学习文档

    Android的事件处理机制包括按键事件、触摸事件、焦点事件和菜单事件等,当这些事件发生时,框架会调用相应的事件处理函数。例如: - 按键事件通过`onKey()`函数处理, - 触摸事件则由`onTouch()`函数负责。 事件...

    ListView触发FragmentDialog

    1. 非焦点样式:为Button和ImageButton设置非焦点状态下的样式,使得它们在失去焦点时仍然能够响应触摸事件。可以通过在XML布局文件中设置`android:background`属性实现。 2. 设置`android:focusable="false"`和`...

    Android ImageButton自定义按钮的按下效果的代码实现方法分享

    例如,我们可以创建一个自定义的ImageButton类,统一处理按钮的按下和抬起效果: ```java public class CustomImageButton extends ImageButton { private float[] btSelectedColors; public CustomImageButton...

    Android用户界面

    View是界面的基本元素,具备绘制、焦点管理、输入处理等功能,而ViewGroup作为容器,可以包含多个View,实现布局管理和组件组合。单线程用户界面模式简化了编程,但可能导致界面响应延迟,如果事件处理函数过于复杂...

    Android游戏开发之旅[借鉴].pdf

    `onKeyDown`和`onKeyUp`方法则分别处理物理按键的按下和释放事件,尤其是中心键或轨迹球,与触摸屏事件相呼应。 在实际应用中,`RepeatListener`接口可以用于定义长按事件的响应行为,例如在游戏中,可以设定长按...

    android自定义按钮示例(重写imagebutton控件实现图片按钮)

    这里设置了`OnTouchListener`和`OnFocusChangeListener`监听器,确保在按钮获得焦点或被触摸时能够触发相应的处理逻辑。 ```java public CmButton(Context context) { super(context); this.setOnTouchListener...

    【Android】ListView与Button的共存问题解决

    综上所述,解决Android程序中ListView与Button共存的问题,主要是通过合理的布局设计、事件处理和属性设置,确保ListView的item点击事件和Button的点击事件能够正确分发和响应。同时,随着技术的发展,开发者也可以...

    Android2.2 API 中文文档系列(9) —— ZoomButton

    它在当前焦点视图内部未处理移动事件并且系统也无法根据指定方向找到新的焦点视图时被调用。 - **参数**: - `focused`:当前具有焦点的视图。 - `direction`:焦点移动的方向,可以是FOCUS_UP、FOCUS_DOWN、...

    Android游戏开发之旅.pdf

    开发者还可以根据实际需求调整长按触发的时间间隔和重复事件的处理逻辑。 除了长按事件,Android游戏开发还涉及其他关键技术,如高效绘图技术(如双缓冲)、音效管理、使用OpenGL ES进行3D图形渲染,以及将J2ME游戏...

Global site tag (gtag.js) - Google Analytics