【发布时间】:2015-08-20 14:55:05
【问题描述】:
我的布局中有以下视图
<RelativeLayout
android:id="@+id/wrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true">
<LinearLayout
android:id="@+id/header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true">
<!-- some child views here -->
</LinearLayout>
<LinearLayout
android:id="@+id/footer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/header"
android:visibility="gone">
<!-- some other child views here -->
</LinearLayout>
</RelativeLayout>
包装器 RelativeLayout 与其父级的底部对齐。并且不显示初始页脚视图(View.GONE)。当点击页眉视图时,页脚应该显示给用户,并从屏幕底部向上滑动动画,当用户再次点击页脚时,页脚应该向下滑动到底部。当我在页脚视图上启动向上滑动动画时,它不会同时推动页眉视图和动画。如果我首先将页脚视图的可见性设置为 View.INVISIBLE,然后启动动画,页眉视图会立即向上推(不与动画或页脚视图一起),页脚视图会附带动画。
这里是调用动画的代码
footer.setVisibility(View.INVISIBLE);
Animation animation = AnimationUtils.loadAnimation(activity, R.anim.slide_up_from_bottom);
animation.setDuration(animDuration);
footer.startAnimation(animation);
footer.postDelayed(new Runnable() {
@Override
public void run()
{
footer.setVisibility(View.VISIBLE);
}
}, animDuration);
这是动画文件内容:
如何让这个动画推动页眉视图,而页脚视图向上滑动?
希望我说清楚了。我想要的只是两个视图一起向上/向下移动。
如果我将动画应用于包装视图,那么它会从底部向上滑动(而不是从当前位置)。
【问题讨论】:
标签: android android-layout android-animation