以编程方式设置android:animateLayoutChanges

以编程方式设置android:animateLayoutChanges,android,animation,dynamic,Android,Animation,Dynamic,我正在以编程方式创建linearLayouts,希望它们在可见性设置为visible/gone时淡入淡出 我可以设定 android:animateLayoutChanges="true" 在xml文件中,但由于我是以编程方式创建视图,因此需要以编程方式进行设置。我如何才能做到这一点?使用以下代码: container.setLayoutTransition(new LayoutTransition()); 或 要禁用淡出效果,请尝试以下操作: LinearLayout layout =

我正在以编程方式创建linearLayouts,希望它们在可见性设置为visible/gone时淡入淡出

我可以设定

android:animateLayoutChanges="true" 
在xml文件中,但由于我是以编程方式创建视图,因此需要以编程方式进行设置。我如何才能做到这一点?

使用以下代码:

container.setLayoutTransition(new LayoutTransition());


要禁用淡出效果,请尝试以下操作:

LinearLayout layout = (LinearLayout) findViewById(R.id.test_layout);
layout.setLayoutTransition(null);

感谢您的评论,但不幸的是,disableTransitionType仅在API级别16可用,而我使用的是API级别15。它是可选的,您可以使用container.setLayoutTransition(new LayoutTransition())好的,但是如果我想禁用淡出效果,API级别15有办法吗?为什么要禁用消失过渡?要在API级别低于16的情况下执行此操作,只需禁用此过渡类型的动画。文档中提到了这一点:LayoutTransition lt=cardsGroup.getLayoutTransition();//禁用显示/消失布局转换lt.setAnimator(LayoutTransition.Exhing,null);lt.setAnimator(LayoutTransition.Inglishing,null);lt.setAnimator(LayoutTransition.CHANGE_,null);这给了我NullPointerException@SrujanBarai那么就没有id为
R.id的视图了。在布局中测试布局
LinearLayout layout = (LinearLayout) findViewById(R.id.test_layout);
layout.setLayoutTransition(null);