我有一个Imageview和一个ImageButton,并希望Imageview移动到imagebutton的位置。
Imageview及其在屏幕上的位置
myAnimation1.getLocationInWindow(imagePos);
图像按钮及其在屏幕上的位置
ImageButton.getLocationInWindow(buttonPos);
要将Imageview转换或移动到Imagebutton,我试过
Animation move = new TranslateAnimation(Animation.ABSOLUTE,imagePos[0],Animation.ABSOLUTE,buttonPos[0],Animation.ABSOLUTE,imagePos[1],Animation.ABSOLUTE,buttonPos[1]);
但它不起作用。屏幕上看不到翻译。任何帮助将受到很多赞赏!谢谢你提前。
答案 0 :(得分:1)
首先,如果你没有从getLocationInWindow获得正确的坐标,请尝试获取这样的坐标:
ImageButton.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
public void onGlobalLayout() {
ImageButton.getViewTreeObserver().removeGlobalOnLayoutListener(this);
int[] locations = new int[2];
ImageButton.getLocationOnScreen(locations);
// x is locations[0];
// y is locations[1];
}
});
答案 1 :(得分:0)
您没有设置持续时间,甚至没有开始动画。
move.setDuration(1000);
imageView.startAnimation(move);
然后尝试使用动画属性来获得所需的结果