![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
android中的imageview怎么设置上下左右的滑动事件?
2017-06-14
展开全部
private float mPosX;
private float mPosY;
private float mCurrentPosX;
private float mCurrentPosY;
private ImageView imageview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageview = (ImageView) findViewById(R.id.imageview);
imageview.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
// 按下
case MotionEvent.ACTION_DOWN:
mPosX = event.getX();
mPosY = event.getY();
break;
// 移动
case MotionEvent.ACTION_MOVE:
mCurrentPosX = event.getX();
mCurrentPosY = event.getY();
if (mCurrentPosX - mPosX > 0 && Math.abs(mCurrentPosY - mPosY) < 10)
Log.e("", "向右");
else if (mCurrentPosX - mPosX < 0 && Math.abs(mCurrentPosY - mPosY) < 10)
Log.e("", "向左");
else if (mCurrentPosY - mPosY > 0 && Math.abs(mCurrentPosX - mPosX) < 10)
Log.e("", "向下");
else if (mCurrentPosY - mPosY < 0 && Math.abs(mCurrentPosX - mPosX) < 10)
Log.e("", "向上");
break;
// 拿起
case MotionEvent.ACTION_UP:
break;
default:
break;
}
return true;
}
});
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询