Java 视图在平移动画期间阻挡其他视图
我在屏幕底部有一个视图(Java 视图在平移动画期间阻挡其他视图,java,android,view,android-linearlayout,translate-animation,Java,Android,View,Android Linearlayout,Translate Animation,我在屏幕底部有一个视图(LinearLayout login),图中为红色。我想将此视图可见性设置为gone,然后使用TranslateAnimation将绿色视图(LinearLayout sign\u in\u box)从屏幕外引入屏幕中间。为此,我使用以下代码: final LinearLayout sign_in_box = (LinearLayout) findViewById(R.id.sign_up_box); LinearLayout login = (LinearLayout)
LinearLayout login
),图中为红色。我想将此视图可见性设置为gone,然后使用TranslateAnimation
将绿色视图(LinearLayout sign\u in\u box
)从屏幕外引入屏幕中间。为此,我使用以下代码:
final LinearLayout sign_in_box = (LinearLayout) findViewById(R.id.sign_up_box);
LinearLayout login = (LinearLayout) findViewById(R.id.start_box);
login.setVisibility(View.GONE);
sign_up_anim = new TranslateAnimation(0,0,height * 75/100,0);
sign_up_anim.setDuration(800);
sign_up_anim.setFillAfter(true);
sign_in_box.setVisibility(View.VISIBLE);
sign_in_box.startAnimation(sign_up_anim);
问题是红色视图消失,但绿色视图在经过红色视图应该结束的位置(点A)之前不会显示在屏幕上。因此,我的动画在开始的几秒钟内什么也不做,然后视图从点A后面滑入。它的行为就像红色视图阻止绿色视图出现一样,即使其可见性设置为“消失”
您是否尝试将视图放在xml中的登录节点之后?这可能会解决问题,因为它将被绘制在屏幕上方。问题是视图应该位于屏幕上的同一位置(位于登录视图的上方),并且登录视图连接到屏幕底部,所以我不确定如何翻转它们仍然允许我在屏幕上保持相同的位置