【发布时间】:2018-06-17 14:41:41
【问题描述】:
我目前有一个可以向左或向右移动的图像,具体取决于用户是触摸设备屏幕的左侧还是右侧部分。但是,我不希望用户将图像移出屏幕!所以我想知道,我可以限制或限制用户可以将图像向左或向右移动多远吗? 这是移动图像的代码(当触摸设备屏幕的左侧或右侧时)
//OnTouch Function
@Override
public boolean onTouch(View v, MotionEvent event) {
int screenWidth = getResources().getDisplayMetrics().widthPixels;
int x = (int)event.getX();
if ( x >= ( screenWidth/2) ) {
int ScreenWidth = getResources().getDisplayMetrics().widthPixels;
float Xtouch = event.getRawX();
int sign = Xtouch > 0.5 * ScreenWidth ? 1 : -1;
float XToMove = 85;
int durationMs = 50;
v.animate().translationXBy(sign*XToMove).setDuration(durationMs);
}else {
if( x < ( screenWidth/2) ) {
int ScreenWidth = getResources().getDisplayMetrics().widthPixels;
float xtouch = event.getRawX();
int sign = xtouch < 0.5 / ScreenWidth ? 1 : -1;
float xToMove = 60; // or whatever amount you want
int durationMs = 50;
v.animate().translationXBy(sign*xToMove).setDuration(durationMs);
}
}
return false;
}
});
【问题讨论】:
-
请编辑您的标题,使其更明确。阅读How to ask
-
抱歉我的问题的标题...但我不知道我的问题的正确名称。
-
现在很好:)
标签: java android image ontouchlistener ontouch