0
所以想象你有一个父母相对布局,高度设置为wrap_content
。此布局内部是另一个默认隐藏的布局。这是我如何透露它:安卓翻译动画立即需要全高,同时动画
view.startAnimation(AnimationUtils.loadAnimation(context, R.anim.translate_in));
view.setVisibility(View.VISIBLE);
这里是相应的anim文件。它基本上将视图从底部移到顶部。
<translate
android:duration="250"
android:fromXDelta="0"
android:fromYDelta="100%p"
android:toXDelta="0"
android:toYDelta="0"
android:fillAfter="true"/>
我期望父视图根据子视图的动画来改变它的高度。但是,当动画开始时,父视图会立即向上移动,而子视图仍然具有动画效果。感觉像在动画完成之前调用setVisibility。
所以为了解决这个问题,我会将孩子的身高从0增加到100%,但是我不想要一个缩放比例,而是一个翻译效果。
任何想法如何解决这个问题?
布局很简单:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:backgroundColor="@color/grey">
<TextView/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:backgroundColor="@color/white"
android:visibility="GONE">
<TextView/>
</RelativeLayout>
</RelativeLayout>
它通过“隐藏”,你的意思是'GONE',在这种情况下,父亲勾画出好像孩子是不存在的,并会听起来像最初身高为'0',但只要您将孩子设置为“可见”,父母就会包裹孩子的实际身高,并“立即向上移动”。是吗? –
@MikeM。正确地 –
@MikeM。布局真的没什么特别的。看我的编辑。 –