私のアプリには、googleBtn というビューがあります。それを押すと、アニメーションが発生し、メニュー ビューが上部に移動します。そのボタンをもう一度押すと、メニューが開きます。下の画像を参照してください。
メニューが開いている間:
メニューを閉じた後:
問題は、メニューを非表示にするためにアニメーションが正しく発生することです。しかし、アニメーションを終了した後、メニュー レイアウトをその位置に固定したい (2 番目の画像のように) が、そのようにはなりませんでした。
現在、メニューが開いているときにGoogleボタンを押すと、メニューが閉じます。アニメーションが終了すると、通常の位置になります。
レイアウトのスクロール位置を修正しようとしましたが、まだ成功していません。
ボタンクリックのコードは次のとおりです。
case R.id.googleBtn:
if(menu){
menuLayout.startAnimation(hideMenu);
menu = false;
}
else{
menuLayout.startAnimation(showMenu);
menu = true;
}
break;
メニューのレイアウトは次のようになります。
<LinearLayout android:id="@+id/menuLayout"
android:layout_height="wrap_content" android:layout_width="fill_parent"
android:gravity="center_horizontal"
android:background="@drawable/slide">
<View android:layout_height="80dp" android:layout_width="80dp"
android:layout_marginBottom="25dp" android:id="@+id/googleBtn"
android:background="#00000000" android:layout_gravity="bottom"/>
</LinearLayout>
では、スクロール値を修正できないのはなぜですか? ?
これに関して助けが必要です。
アップデート
これはアニメーションの私のコードです:
メニューハイドの場合:
<?xml version="1.0" encoding="utf-8"?>
<translate
android:fromYDelta="0"
android:toYDelta="-70%"
android:duration="1000"
android:fillEnabled="true"
android:fillAfter="true"
/>
そしてMenuShowの場合:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromYDelta="-70%"
android:toYDelta="0"
android:duration="1000"/>
</set>