`
wangleyiang
  • 浏览: 221004 次
社区版块
存档分类
最新评论

Android 不规则图形的响应事件处理

阅读更多

    在Android开发中,会遇到对View的不同区域设置不同的响应事件!当然,我们可以通过布局上的技巧来解决这个问题,而且这也是适用范围比较广的处理方法;还可以通过View的某些属性来解决这个问题,但是往往会有所限制!比如,我们希望对下述图片的红、绿、蓝、通明区域有不同的响应事件,此时根据具体的问题,我们可以获得触碰点的颜色,然后分别做处理即可!这个方法的限制是,不同响应事件的点所在颜色取值范围比较集中!!!

     可以把上图的响应事件分成四种,分别如图所示:

     假设用ImageView显示图片,涉及到的具体代码如下:

		ImageView imageView = new ImageView(this);
		imageView.setBackgroundResource(R.drawable.background);
		final Bitmap bitmap = ((BitmapDrawable) imageView.getDrawable()).getBitmap();
		imageView.setOnTouchListener(new OnTouchListener() {
			
			@Override
			public boolean onTouch(View v, MotionEvent event) {
				int colorValue = bitmap.getPixel((int) event.getX(), (int) event.getY());
				// red
				if (colorValue == 0xff0000) {
					// Something to do.
					
					return true;
				}
				// green
				if (colorValue == 0x00ff00) {
					// Something to do.
					
					return true;
				}
				// blue
				if (colorValue == 0x0000ff) {
					// Something to do.
					
					return true;
				}
				// transparent
				if (colorValue == 0x000000) {
					// Something to do.
					
					return true;
				}
				
				return false;
			}
		});

    当图片的颜色被我们处理后,就不需要把这个事件在触碰链中传递下去,所以代码返回ture;否则需要继续在触碰链中继续传递触碰事件!

    多说一句:希望对您有所帮助!=^_^=

 

  • 大小: 299 Bytes
  • 大小: 561 Bytes
分享到:
评论

相关推荐

    Android代码-图片不规则区域点击事件处理

    图片不规则区域点击事件处理 HotImg是基于对一张图片进行不规则区域点击响应不同事件。 基本内容 1.对图片的部分区域进行可响应事件 2.对图片进行缩放后,仍可响应区域点击事件 3.对图片进行移动后.仍可响应区域...

    不规则imageview点击事件拼图

    总之,“不规则imageview点击事件拼图”是一个涉及自定义视图、图像处理、触摸事件处理以及图形重合技术的项目。通过这样的实现,开发者可以创建出具有独特交互效果的界面,提升应用的用户体验。

    Android应用源码之不规则点击区域 三角形点击区域.zip

    在Android开发中,有时我们可能需要创建不...它涵盖了自定义View的创建、图形绘制、触摸事件处理以及形状的几何计算等多个核心知识点。通过深入学习和理解这些内容,开发者可以更自由地设计和实现各种复杂的交互效果。

    不规则形状控件的制作

    此外,对于Windows Forms或WPF应用,我们可以利用`Graphics`类的`DrawEllipse()`方法,配合`Control.OnPaint()`事件处理程序实现不规则形状控件。在WPF中,还可以通过`Path`元素和`Geometry`对象来定义复杂的形状。 ...

    cocos creator 不规则形状按钮

    在Cocos Creator游戏开发中,创建不规则形状的按钮是一个常见的需求,这可以让游戏界面更加独特和富有创意。本文将详细介绍如何结合Gizmo工具来实现这一目标。 首先,了解Cocos Creator。Cocos Creator是一款全栈式...

    Android高级应用源码-不规则点击区域 三角形点击区域.zip

    在Android开发中,实现不规则点击区域,如三角形点击区域,是一项高级技术,它涉及到图形绘制、事件处理以及自定义视图等多个方面。这个压缩包"Android高级应用源码-不规则点击区域 三角形点击区域.zip"显然是一个...

    安卓Android源码——不规则点击区域 三角形点击区域.rar

    首先,我们需要理解Android中的点击事件处理机制。通常,Android系统通过View类的`onTouchEvent`方法来处理触摸事件。当用户点击屏幕时,事件会沿着View层次结构传递,直到某个View消费该事件。默认情况下,View的...

    爱心的不规则上升动画效果

    综上所述,"爱心的不规则上升动画效果"是一个结合了用户交互、图形绘制、动画控制和路径规划的综合技术实现。它体现了开发者对用户体验的细致考虑,以及对动画技术的深入理解和应用。通过不断学习和实践,开发者可以...

    Android自定义View绘制几何图形

    在Android开发中,自定义View是一项非常重要的技能,它允许我们根据需求绘制出各种复杂的图形,从而实现独特的用户界面。本篇文章将详细讲解如何在Android中自定义View来绘制几何图形,以矩形为例,结合提供的`...

    Android 图形解锁源码-IT计算机-毕业设计.zip

    这一过程涉及到的主要技术包括触摸事件处理、坐标转换和图形匹配。 在源码中,我们可以看到以下关键组件和概念: 1. `GestureDetector`:这是Android提供的一个类,用于检测用户的滑动和点击操作。在这个图形解锁...

    SVGRegion的使用

    在自定义View时,你可以利用Canvas和Paint类来绘制复杂的形状,如使用Path对象结合SVG解析结果来创建不规则图形。 事件响应是Android用户界面交互的关键部分。在自定义控件中,通常需要覆盖`onTouchEvent...

    安卓开发-不规则点击区域 三角形点击区域.zip.zip

    此外,对于复杂的不规则形状,可以利用SVG(可缩放矢量图形)库来处理。 总结起来,处理不规则点击区域在Android开发中是一个挑战,但通过自定义View和几何计算,我们可以实现任何形状的点击响应。这个资料包"安卓...

    Android Path 解析 绘制各种图形

    这时,可以在事件处理方法中修改`Path`,然后调用`invalidate()`来通知系统重绘View。 在`PathView`这个示例中,可能是一个自定义的View类,继承自`View`,并重写了`onDraw()`方法,里面包含了上述的`Path`操作和...

    Android小游戏源码

    3. **事件处理**:Android的触摸事件(MotionEvent)处理是游戏交互的基础。玩家通过触摸屏幕控制飞机移动,发射子弹,开发者需要编写对应的监听器来捕获和响应这些事件。 4. **动画效果**:为了使游戏更生动,...

    android 下的麻将代码

    5. **触摸事件处理**:Android应用通常需要响应用户的触摸事件。在麻将游戏中,玩家可能会触摸屏幕来摸牌、出牌等,因此需要编写相应的事件监听器。 6. **数据存储**:游戏进度、用户信息等可能需要持久化存储。...

    android 小游戏源码

    - **触摸事件处理**:Android的MotionEvent类用于处理用户的触摸事件,源码中会看到如何监听和响应触摸事件,实现角色移动、点击等操作。 - **传感器集成**:Android设备通常带有加速度计和陀螺仪,源码可能利用...

    android飞机游戏.rar

    2. OpenGL ES:由于Android系统对2D和3D图形处理主要依赖OpenGL ES,因此飞机游戏通常会用到这个图形库,用于绘制飞行器、背景、敌人等游戏元素。 二、游戏框架构建 1. 游戏循环:游戏的核心是游戏循环,它不断...

    Android代码-FishJoyfinal.zip

    总的来说,FishJoyfinal项目是一个集成了Android游戏开发核心知识点的实例,包括但不限于Java编程、资源管理、游戏逻辑、事件处理、物理引擎、音频处理以及性能优化等。通过研究这个项目,开发者不仅可以学习到...

    Android 游戏Demo

    7. **事件处理与输入系统**:游戏需要响应用户的触摸、滑动等输入,这需要正确设置事件监听器。Android提供了多种方式来处理用户输入,包括手势识别。 8. **游戏逻辑与AI**:游戏的规则、玩家交互和非玩家角色的...

Global site tag (gtag.js) - Google Analytics