我正在使用以下代码为视图的隐藏设置动画(根据其他问题应该可以):
final RelativeLayout oSurfaceLayout = findViewById(R.id.surface_layout);
oSurfaceLayout.animate().alpha(0).setDuration(2000).withEndAction(new Runnable() {
@Override
public void run() {
oSurfaceLayout.setVisibility(View.GONE);
}
});
但是,我实际上没有任何动画:该视图立即消失,并且两秒钟后正确调用了结束动作。
问题出在哪里?
答案 0 :(得分:0)
仅运行 Runnable 而不调用动画,此代码不起作用。
如果要显示动画,则必须在 res / anim 文件夹中创建 fade.xml 这样的xml文件
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:duration="2000"
/>
并将其添加到Java
oSurfaceLayout.startAnimation(AnimationUtils.loadAnimation(context, R.anim.fade));