【发布时间】:2015-04-19 20:30:34
【问题描述】:
我想在屏幕上移动一个位图,但我只能水平移动,因为如果我垂直移动,视图的滚动就会开始,而位图的移动就会消失。我有
public boolean onTouchEvent(MotionEvent 事件)
在 MOVE 的情况下更改位图的 X 和 Y 的方法。然后在 onDraw() 方法中绘制位图。滚动是在 xml 中。它的内部是一个布局和一个视图。
我想当我触摸时,万一DOWN,如果我触摸位图,禁用滚动,但我在其他地方没有。
那是代码的简历
公共类表扩展 ScrollView{
private static Integer srcX = 0, srcY = 0;
public Table(Context context) {
super(context);
setWillNotDraw(false);
setVerticalScrollBarEnabled(true);
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
for(int i=1; i<= Paint_Table.num_players; i++)
canvas.drawBitmap(bitmap, X, Y, null);
}
@SuppressLint("ClickableViewAccessibility") @Override
public boolean onTouchEvent(MotionEvent event) {
int x = (int) event.getX();
int y = (int) event.getY();
switch(event.getAction()){
case MotionEvent.ACTION_DOWN:
if (youTouchBitmap) {
srcX = x;
srcY = y;
}
break;
case MotionEvent.ACTION_MOVE:
if (srcX !=0 && srcY != 0) {
X=x;
Y=y;
invalidate();
}
break;
}
return true;
}
}
有人可以帮助我吗? 谢谢和问候。
【问题讨论】:
-
请提供相关代码sn-ps,并尝试用更具体的方式描述问题。
-
对不起,我现在放了一份代码简历。
标签: android