private OnTouchListener shopCarSettleTouch = new OnTouchListener() {
int lastX,lastY;
@Override
public boolean onTouch(View v, MotionEvent event) {
int ea=event.getAction();
DisplayMetrics dm=getResources().getDisplayMetrics();
int screenWidth=dm.widthPixels;
int screenHeight=dm.heightPixels-100;//需要减掉图片的高度
switch(ea){
case MotionEvent.ACTION_DOWN:
lastX=(int)event.getRawX();//获取触摸事件触摸位置的原始X坐标
lastY=(int)event.getRawY();
case MotionEvent.ACTION_MOVE:
//event.getRawX();获得移动的位置
int dx=(int)event.getRawX()-lastX;
int dy=(int)event.getRawY()-lastY;
int l=v.getLeft()+dx;
int b=v.getBottom()+dy;
int r=v.getRight()+dx;
int t=v.getTop()+dy;
//下面判断移动是否超出屏幕
if(l<0){
l=0;
r=l+v.getWidth();
}
if(t<0){
t=0;
b=t+v.getHeight();
}
if(r>screenWidth){
r=screenWidth;
l=r-v.getWidth();
}
if(b>screenHeight){
b=screenHeight;
t=b-v.getHeight();
}
v.layout(l, t, r, b);
lastX=(int)event.getRawX();
lastY=(int)event.getRawY();
v.postInvalidate();
break;
case MotionEvent.ACTION_UP:
break;
}
return false;
}
};
int lastX,lastY;
@Override
public boolean onTouch(View v, MotionEvent event) {
int ea=event.getAction();
DisplayMetrics dm=getResources().getDisplayMetrics();
int screenWidth=dm.widthPixels;
int screenHeight=dm.heightPixels-100;//需要减掉图片的高度
switch(ea){
case MotionEvent.ACTION_DOWN:
lastX=(int)event.getRawX();//获取触摸事件触摸位置的原始X坐标
lastY=(int)event.getRawY();
case MotionEvent.ACTION_MOVE:
//event.getRawX();获得移动的位置
int dx=(int)event.getRawX()-lastX;
int dy=(int)event.getRawY()-lastY;
int l=v.getLeft()+dx;
int b=v.getBottom()+dy;
int r=v.getRight()+dx;
int t=v.getTop()+dy;
//下面判断移动是否超出屏幕
if(l<0){
l=0;
r=l+v.getWidth();
}
if(t<0){
t=0;
b=t+v.getHeight();
}
if(r>screenWidth){
r=screenWidth;
l=r-v.getWidth();
}
if(b>screenHeight){
b=screenHeight;
t=b-v.getHeight();
}
v.layout(l, t, r, b);
lastX=(int)event.getRawX();
lastY=(int)event.getRawY();
v.postInvalidate();
break;
case MotionEvent.ACTION_UP:
break;
}
return false;
}
};
1114

被折叠的 条评论
为什么被折叠?



