我正在尝试理解在屏幕上移动对象的基础知识等。我有一个位图,我正在屏幕上移动该位图。如何将位图保留在矩形内并仍然移动它。我想将位图放在一个矩形中,因为这将有助于与其他对象进行碰撞检测。以下是我的代码。 感谢
Bitmap bitmap1 = BitmapFactory.decodeResource(getResources(), R.drawable.yellow_ball);
x1 = 0;
y1 = 100;
@Override
protected void onDraw(Canvas canvas) {
if(x1 < canvas.getWidth()){
x1 += 5;
}
else{
x1 = 0;
}
canvas.drawBitmap(bitmap1, x1, y1, null);
}
答案 0 :(得分:0)
你有基本的想法。
首先,确定要将对象移动到的位置。
然后将新的X坐标与矩形的左右边界进行比较, 如果新的X坐标位于矩形的边界之外,请将坐标重置为超出的范围。
然后,对Y坐标执行相同的操作。
最后,将位图移动到调整后的X和Y坐标。
我编写了一段代码来执行此操作,请参阅https://github.com/rfreedman/android-constrained-drag-and-drop-view以获取示例。