微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – 将动画从位置Y翻译到屏幕顶部

我有多个视图都可以选择.当其中一个被选中时,我希望我的新视图首先定位到与所选视图相同的位置,并将其移动到我的屏幕顶部.我怎样才能做到这一点?所选项目的位置各不相同.

// Selected item
int[] location = new int[2];
item.getLocationOnScreen(location);
int positionY = location[1];

// Move the view I want to move to the position of selected item
viewToMove.setTranslationY(positionY);

// Create and start animation
Animation slideUp = new TranslateAnimation(viewToMove.getTranslationX(), viewToMove.getTranslationX(), positionY, -positionY);
slideUp.setDuration(1000);
slideUp.setFillEnabled(true);
slideUp.setFillAfter(true);
viewToMove.startAnimation(slideUp);

解决方法:

随着ViewPropertyAnimator很容易:

viewToMove.animate().translationX(...).translationY(0).setDuration(1000); 

translationY(0)是Y轴的顶部,并且
在translationX(…)处,您可以填写希望视图在X轴上移动到的坐标.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐