小编use*_*883的帖子

android棒棒糖动画故障

在运行Android 5(Lollipop)的设备中,我对默​​认布局动画有一种奇怪的行为.我正在使用具有多个Fragments的活动,这些活动在运行时使用默认的片段管理器进行替换.当替换旧片段时,我想使用动画来实现流畅的ui流.在pre-lollipop设备上,动画的工作方式与预期的一样,但在运行最新操作系统的设备上,片段故障之间的动画:

小故障屏幕截图

我尝试使用默认动画xml标记

android:animateLayoutChanges="true"
Run Code Online (Sandbox Code Playgroud)

因为它不起作用,我使用此代码更改它没有任何效果

mTransaction = mManager.beginTransaction();
        mTransaction.setCustomAnimations(android.R.animator.fade_in, android.R.animator.fade_out);
        mTransaction.remove(mFragment);
        mTransaction.add(R.id.container, mFragment, "fragment");
        mTransaction.commit();
Run Code Online (Sandbox Code Playgroud)

我已经在不同的设备和Android模拟器中测试了代码.奇怪的是,它在运行pre-lollipop的设备运行最新操作系统(5.0.1)的android模拟器的预期效果.但它不适用于运行Android 5.0的Nexus 4和Nexus 5等设备

有什么建议?任何帮助?

提前致谢

编辑:

它似乎是一个错误取决于使用的设备.我已经在不同设备(三星Galaxy S4,HTC(One mini2,One M8,Desire S),Nexus 4和5)上测试了代码,它只出现在谷歌nexus设备上.

编辑

解决动画问题的一种解决方法是通过以下方法禁用硬件加速

<application android:hardwareAccelerated="false">

应用Manifest中的标签.但使用这个使应用程序非常慢.

解决此问题的解决方案是为活动设置背景图像/颜色/可绘制.看到

android android-animation android-layout android-fragments android-5.0-lollipop

15
推荐指数
1
解决办法
2750
查看次数