Android对活动触摸的视觉效果
我正在开发一个Android应用程序,我想在UI中添加一些eyecandy。我有一个活动(我们称之为MainActivity),它有一些文本字段、按钮和图库。 我想实现的是:当用户触摸到这个活动的某个地方时,在他触摸的地方应该会有一些视觉效果(例如火花等) 因此,我的问题的关键部分是: a) 如何确定用户触摸的位置 b) 如何将效果绘制到屏幕上(作为活动的“叠加”) 提前感谢每一个有用的答案Android对活动触摸的视觉效果,android,touch,android-activity,effect,Android,Touch,Android Activity,Effect,我正在开发一个Android应用程序,我想在UI中添加一些eyecandy。我有一个活动(我们称之为MainActivity),它有一些文本字段、按钮和图库。 我想实现的是:当用户触摸到这个活动的某个地方时,在他触摸的地方应该会有一些视觉效果(例如火花等) 因此,我的问题的关键部分是: a) 如何确定用户触摸的位置 b) 如何将效果绘制到屏幕上(作为活动的“叠加”) 提前感谢每一个有用的答案 (我已经检查了答案,但它似乎不适用于我的情况。)您应该覆盖活动的onTouchEvent方法。然后,您可
(我已经检查了答案,但它似乎不适用于我的情况。)您应该覆盖活动的
onTouchEvent
方法。然后,您可以获得触摸事件的坐标:
@Override
public boolean onTouchEvent(MotionEvent event) {
float touchX = event.getX();
float touchY = event.getY();
switch(event.getAction()) {
case MotionEvent.ACTION_DOWN:
// touch down
break;
case MotionEvent.ACTION_MOVE:
// movement
break;
case MotionEvent.ACTION_UP:
// touch up
break;
default:
// default
}
return super.onTouchEvent(event);
}
您应该覆盖活动的
onTouchEvent
方法。然后,您可以获得触摸事件的坐标:
@Override
public boolean onTouchEvent(MotionEvent event) {
float touchX = event.getX();
float touchY = event.getY();
switch(event.getAction()) {
case MotionEvent.ACTION_DOWN:
// touch down
break;
case MotionEvent.ACTION_MOVE:
// movement
break;
case MotionEvent.ACTION_UP:
// touch up
break;
default:
// default
}
return super.onTouchEvent(event);
}
如果您正在使用ICS,那么我建议您查看设置应用程序中的开发人员选项。如果您没有使用ICS,我相信您可以查看touchevents的APIDEMOS。他们在触摸上画线。其中的代码可以帮助您开始 如果您正在处理ICS,那么我建议您查看“设置”应用程序中的开发人员选项。如果您没有使用ICS,我相信您可以查看touchevents的APIDEMOS。他们在触摸上画线。其中的代码可以帮助您开始 首先,必须将onTouchListener添加到根布局中,然后才能获得用户触摸屏幕的坐标。 例如:
float x,y;
rl = (RelativeLayout) findViewById(R.id.root_layout);
rl.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
float x = event.getX();
float y = event.getY();
return super.onTouchEvent();
}
});
首先,必须将onTouchListener添加到根布局中,然后才能获得用户触摸屏幕的坐标。 例如:
float x,y;
rl = (RelativeLayout) findViewById(R.id.root_layout);
rl.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
float x = event.getX();
float y = event.getY();
return super.onTouchEvent();
}
});
要进一步回答您的问题,请查看APIDemos->Graphics->OpenGL ES->半透明GLSurfaceView。这将帮助您在活动上创建覆盖。在API演示中可能还有一些其他的例子,可以为您提供一些帮助。Android的API演示是解决一些已知问题的一组很好的示例。要进一步回答您的问题,请查看APIDemos->Graphics->OpenGL ES->半透明的GLSurfaceView。这将帮助您在活动上创建覆盖。在API演示中可能还有一些其他的例子,可以为您提供一些帮助。Android的API演示是解决一些已知问题的好例子。谢谢,这回答了a部分)!你知道如何在活动中画一些覆盖视图的东西吗?(b) 例如,可以将ImageView放置在可以放置动画或绘制图像的坐标处。这就是我要尝试的。谢谢,这回答了a部分)!你知道如何在活动中画一些覆盖视图的东西吗?(b) 例如,可以将ImageView放置在可以放置动画或绘制图像的坐标处。这就是我要尝试的。谢谢,这回答了a部分)!你知道如何在活动中画一些覆盖视图的东西吗?有没有可能让画布覆盖我的UI?谢谢,这回答了第a部分)!你知道如何在活动中画一些覆盖视图的东西吗?有没有可能让画布覆盖我的UI?