我正在尝试在先前使用RotateAnimation旋转的布局上制作动画。我想做的动画是fadeIn和FadeOut,视情况而定
aLayout = (LinearLayout) _context.findViewById(R.layout.layoutId);
AlphaAnimation fadeIn = new AlphaAnimation(0, 1.0f);
AlphaAnimation fadeOut = new AlphaAnimation(1.0f, 0);
fadeIn.setDuration(500);
fadeOut.setDuration(500);
fadeIn.setFillAfter(true);
fadeOut.setFillAfter(true);
根据我申请的情况:
aLayout.startAnimation(fadeIn);
或
aLayout.startAnimation(fadeOut);
我已经检查过,动画并没有尝试同时启动。行为是我的布局部分淡入。
不是拥有'隐形部分'而是'可见部分'
我只将部分布局'隐形部分'改为'in le rt'。
这似乎完全随机,这就是为什么我问你,以防你知道它可以来自哪里。在旋转之前,这个alpha的东西效果很好,但是一旦我这样做,我就会开始出现这种意想不到的行为
我正在从2.2到4.1工作任何帮助将不胜感激。感谢
编辑:无法解决这个问题。任何人?
答案 0 :(得分:0)
我使用fadeout动画:
public void fadeout(final View view) {
// Start Fade Animation
Animation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setInterpolator(new AccelerateInterpolator());
fadeOut.setStartOffset(1000);
fadeOut.setDuration(1000);
AnimationSet animation = new AnimationSet(false);
animation.addAnimation(fadeOut);
view.startAnimation(animation);
}
我在设置了抓取布局根目录后想要淡出的活动的内容视图后在onCreate中调用它:
View layoutRoot = findViewById(R.id.splashscreen);
fadeout(layoutRoot);
对于旋转部分,您可以在onConfigurationChanged
答案 1 :(得分:0)
似乎它是android上的一个错误。无法想出如何解决它。 无论如何,我发现了另一种方法。而不是使布局旋转我只旋转UIElement我需要旋转并创建我想要动画两次的元素。一个用于垂直位置,另一个用于水平位置。
这是我找到的唯一方法