2013-04-05 61 views
0

我越来越沮丧了一个简单的片段切换,由于某些原因,它不会播放任何动画。动画无法在FragmentTransaction(Android)中工作

片段切换本身的作品,我可以看到我的新片段。但是没有过渡。

任何人都可以帮我理解为什么吗? 这里是我的片段交易代码:

public class FullscreenActivity extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_fullscreen); 
    } 

    @Override 
    protected void onResume() { 
     super.onResume(); 

     new Handler().postDelayed(new Runnable() { 

      @Override 
      public void run() { 
       FragmentTransaction transaction = getFragmentManager().beginTransaction(); 
       transaction.setCustomAnimations(R.anim.slide_out_right, R.anim.slide_out_right); 
       transaction.replace(R.id.root, new InitialFragment(),"DDDDD"); 
       transaction.commit(); 

      } 
     }, 3000L); 

    } 
} 

这里,slide_out_right.xml,名称是误导 - 我已经将它设置为一些更基本的,是某些我不拧动画PARAMS:

<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android" 
    android:valueFrom="0" 
    android:valueTo="1" 
    android:propertyName="alpha" 
    android:duration="@android:integer/config_mediumAnimTime" /> 

无论哪种方式,我看不出任何效果。我尝试使用setTranstition(FragmentTransiniot.TRANSIT_ ALLMOST_ALL_OF_THE_FLAGS),似乎没有任何效果。

我没有通过支持库使用片段,我正在使用Android 4.1.2测试根植的Galaxy S。

回答

0

更改的值:

android:valueTo="1" 

android:valueTo="1000" 

android:propertyName="alpha" 

android:propertyName="x" 

如果你想让你的片段移动。在4.0.3版本下,我遇到了与三星Galaxy Tab 2 10.1相同的问题。我正在应用动画的片段(沿x方向移动)完全没有移动。一旦我触摸它(碎片),它会刷新并立即移动到最终目的地。

+0

我知道如何让它移动。我希望看到对我的片段有任何影响。答案非常愚蠢。爆炸的开发手机已通过Android设置菜单中的“开发选项”禁用了动画制作人员。我很惭愧地写下我花了多少时间才弄明白这一点。 – George 2013-04-10 13:07:34

4

回答我自己的问题: 由于我没有看到对我的片段有任何影响,无论我尝试写什么动画,我认为更全球化是错误的。答案非常愚蠢。

爆炸的开发手机动画师通过Android设置菜单中的“开发选项”禁用了动画。我很惭愧地写下了我花了多少时间来解决这个问题,但希望别人能从中受益。

+0

哇,太明显了,太难以捉摸!我从未想过它。谢谢!! – Logic1 2016-01-27 03:12:38