我有相对布局,有三个按钮,1个固定在顶部(TopButton
),一个在底部(BottomButton
,一个将直接放在顶部按钮或以上根据用户触摸我的按钮,底部按钮(MiddleButton
)。
在每个按钮下面,我放置了一个ScrollView,然后在那里放了一个textView。我正在尝试创建一组监听器,以便当用户单击其中一个按钮时,其他两个按钮ScrollViews(及其textViews)设置为View.GONE
,并且按下的按钮将具有其ScrollView设为View.Visible
。
除了设置ScrollViews可见性之外,我想根据按下的按钮,通过一个简单的滑动动画(全部在屏幕上)将按钮的位置更改为三个菜单中的一个:
推送TopButton - (打开活动,现在设置的内容)此按钮的scrollView可见,其他两个设置已消失,两个按钮位于底部屏幕。
推送MiddleButton - ScrollView 1和3将设置为已消失,ScrollView 2将显示,MiddleButton
将在TopButton
正下方滑动。因此,订单将为TopButton
,MiddleButton
,Scroll/TextView2
,BottomButton
。
BottomButton推送 - 1和2的ScrollViews将设置为Gone,3将设置为Visible,BottomButton
将向上滑动以显示ScrollView的最大空间。因此,此订单中的顺序为TopButton
,MiddleButton
,BottomButton
,Scroll/TextView3
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/OverallLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:animateLayoutChanges="true"
tools:context="${relativePackage}.${activityClass}" >
<Button
android:id="@+id/TopButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true" />
<Button
android:id="@+id/BottomButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true" />
<Button
android:id="@+id/MiddleButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/BottomButton" />
<ScrollView
android:id="@+id/Scroll1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@id/MiddleButton"
android:layout_below="@id/TopButton"
android:visibility="visible" >
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center" />
</ScrollView>
<ScrollView
android:id="@+id/Scroll2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@id/BottomButton"
android:layout_below="@id/MiddleButton"
android:visibility="gone" >
<TextView
android:id="@+id/textView2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center" />
</ScrollView>
<ScrollView
android:id="@+id/Scroll3"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/BottomButton"
android:visibility="gone" >
<TextView
android:id="@+id/textView3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center" />
</ScrollView>
</RelativeLayout>
我需要帮助确定此移动动画的fromY
和toY
值。这些是什么?
答案 0 :(得分:0)
这是我使用的翻译动画。它被称为&#34; pull_in_from_top.xml&#34;
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="500"
android:fromYDelta="-100%"
android:interpolator="@android:anim/accelerate_interpolator"
android:toYDelta="0%" />
这个与#34; push_out_to_top.xml&#34;
相反<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="500"
android:fromYDelta="0%"
android:interpolator="@android:anim/accelerate_interpolator"
android:toYDelta="-100%" />