如何在设置视图的alpha之前创build1秒的延迟?

在我的应用程序中,我将在一个animation之后设置alpha。 像:

hideMenu = AnimationUtils.loadAnimation( getApplication(), R.anim.menu_layout_hide); menuLayout.startAnimation(hideMenu); menuLayout.setVisibility(View.GONE); 

但是我想在Alpha设置视图之前设置1秒的延迟。 因为我无法看到该布局的animation。 那么怎么样呢?

谢谢。

Solutions Collecting From Web of "如何在设置视图的alpha之前创build1秒的延迟?"

在你的animationxml文件中,你可以使用android:startOffset属性:

 android:startOffset int. The amount of milliseconds the animation delays after start() is called. 

你不能用这个

android:startOffset int。 调用start()后animation延迟的毫秒数。

在你的animationXML?

请参阅animation资源文档 。

假设你正在使用view .animate()方法,你可以设置起始偏移量:

 view.animate().x(100) .setDuration(5000) .setStartDelay(1000); 

处理程序是一个很好的技术来实现这一点。

 new Handler().postDelayed(new Runnable() { @Override public void run() { view.startAnimation(animation); } }, 1000); 

在你的情况下,你可以简单地这样做

 hideMenu = AnimationUtils.loadAnimation( getApplication(), R.anim.menu_layout_hide); hideMenu.setStartOffset(1000); menuLayout.startAnimation(hideMenu); menuLayout.setVisibility(View.GONE); 

在这种情况下,您可以从活动中dynamic控制开始时间的值