移动 ImageView
Moving an ImageView
我在点击 "Cucina" 按钮时遇到问题,白色圆圈(照片左上角)应该移动到按钮本身的左侧。
我正在使用以下代码:
filter2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ConstraintLayout.LayoutParams layoutParams = new ConstraintLayout.LayoutParams(30, 30);
layoutParams.setMargins(Math.round(filter2.getX()), Math.round(filter2.getY()), 0, 0);
cerchioMenu.setLayoutParams(layoutParams);
}
});
但它不起作用,有什么建议吗?
在 onClick
事件中,您应该像这样获取按钮的坐标:
int[] location = new int[2];
button.getLocationInWindow(location);
location
数组将保存按钮的 x 和 y 坐标。现在像这样为白色圆圈设置动画:
mCircle.animate().y(location[1]).setDurarion(200).start();
记得在对数组进行任何调用之前检查 location
的 null 和数组索引。
我在点击 "Cucina" 按钮时遇到问题,白色圆圈(照片左上角)应该移动到按钮本身的左侧。 我正在使用以下代码:
filter2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ConstraintLayout.LayoutParams layoutParams = new ConstraintLayout.LayoutParams(30, 30);
layoutParams.setMargins(Math.round(filter2.getX()), Math.round(filter2.getY()), 0, 0);
cerchioMenu.setLayoutParams(layoutParams);
}
});
但它不起作用,有什么建议吗?
在 onClick
事件中,您应该像这样获取按钮的坐标:
int[] location = new int[2];
button.getLocationInWindow(location);
location
数组将保存按钮的 x 和 y 坐标。现在像这样为白色圆圈设置动画:
mCircle.animate().y(location[1]).setDurarion(200).start();
记得在对数组进行任何调用之前检查 location
的 null 和数组索引。