【发布时间】:2015-04-22 00:13:52
【问题描述】:
我正在创建一个过渡。当单击按钮时,将执行以下方法。该方法更改了图像视图的大小、位置,并将其淡出。我正在使用TransitionManager.beginDelayedTransition(); is too fast. 来减慢过渡速度.. 但它仍然太快了。我能做些什么来减缓过渡。谢谢。
private void moveIcon() {
View moveableIcon = findViewById(R.id.moveableImageView);
TransitionManager.beginDelayedTransition(myLayout);
// change the position of the icon
RelativeLayout.LayoutParams positionRule = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT ,
RelativeLayout.LayoutParams.WRAP_CONTENT);
positionRule.addRule(RelativeLayout.ALIGN_PARENT_TOP , RelativeLayout.TRUE);
positionRule.addRule(RelativeLayout.ALIGN_PARENT_LEFT , RelativeLayout.TRUE);
moveableIcon.setLayoutParams(positionRule);
// change the size of the button
ViewGroup.LayoutParams sizeRules = moveableIcon.getLayoutParams();
sizeRules.width = 50;
sizeRules.height = 50;
moveableIcon.setLayoutParams(sizeRules);
fadeOutAndHideImage(image);
}
private void fadeOutAndHideImage(final ImageView img)
{
Animation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setInterpolator(new AccelerateInterpolator());
fadeOut.setDuration(1000);
fadeOut.setAnimationListener(new Animation.AnimationListener()
{
public void onAnimationEnd(Animation animation)
{
img.setVisibility(View.GONE);
}
public void onAnimationRepeat(Animation animation) {}
public void onAnimationStart(Animation animation) {}
});
img.startAnimation(fadeOut);
}
【问题讨论】:
-
我认为这是因为您的
fadeOutAndHideImage()函数中的fadeOut.setDuration(1000);。如果您将持续时间设置得更高,则完成转换需要更多时间,因此会更慢。
标签: java android animation transitions