【发布时间】:2013-12-31 19:49:22
【问题描述】:
当手指在图像上滑动时如何查找触摸事件。
相对布局包含多个图像视图。它们是随机放置的。当我在屏幕上滑动手指时,我想捕捉用户手指交叉的图像视图。
我能够捕获相对布局触摸事件请建议一些方法来捕获图像视图 在相对布局的滑动动作中触摸。
附加图像布局以便更好地理解。
代码:
public class MainActivity extends Activity {
ImageView imageView;
Rect imageViewArea;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView=(ImageView) findViewById(R.id.imageView);
imageViewArea = new Rect();
//imageView.getGlobalVisibleRect(imageViewArea);
//not working
imageView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
return false;
}
});
}
//working
@Override
public boolean onTouchEvent(MotionEvent event) {
// TODO Auto-generated method stub
switch(event.getActionMasked())
{
case MotionEvent.ACTION_DOWN:
break;
case MotionEvent.ACTION_MOVE:
Log.i("log", "ACTION_MOVE");
int x = (int) event.getX();
int y = (int) event.getY();
//not working
if(imageViewArea.contains(x, y)) {
Toast.makeText(getApplicationContext(), "clicked", Toast.LENGTH_LONG).show();
}
break;
case MotionEvent.ACTION_UP:
break;
default:
break;
}
return super.onTouchEvent(event);
}
【问题讨论】:
-
无论你做了什么,请发布你的代码
标签: android