我想使用TranslateAnimation
.
我的 XML 就像
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<Button
android:id="@+id/buttonsld"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/textsld"
android:text="slideup" />
<LinearLayout
android:id="@+id/layoutsld2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/buttonsld2"
android:layout_below="@+id/buttonsld"
android:background="@drawable/iz"
android:orientation="vertical" >
</LinearLayout>
<LinearLayout
android:id="@+id/layoutsld3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/buttonsld2"
android:layout_below="@+id/buttonsld"
android:background="@drawable/fon"
android:orientation="vertical"
android:visibility="gone" >
</LinearLayout>
<Button
android:id="@+id/buttonsld2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:text="slidedown" />
</RelativeLayout>
我的代码就像
private int x= 0;
buttonslideup.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (x == 0) {
lin_lay2.setVisibility(View.GONE);
lin_lay3.setVisibility(View.VISIBLE);
Animation slide = new TranslateAnimation(0, 0, 100, 0);
slide.setDuration(1000);
slide.setFillAfter(true);
lin_lay3.startAnimation(slide);
x = 1;
} else {
lin_lay3.setVisibility(View.GONE);
lin_lay2.setVisibility(View.VISIBLE);
Animation slide = new TranslateAnimation(0, 0,
100, 0);
slide.setDuration(1000);
slide.setFillAfter(true);
lin_lay2.startAnimation(slide);
x = 0;
}
}
});
但是当我使用它时,起初,lin_lay3
滑动并进入屏幕并没有问题,但是当我再次单击按钮时,lin_lay2
滑动,但它在后面lin_lay3
,我看不到lin_lay2
。
我想要的是layouts
通过单击来更改这些button
。