0

解決策を探していて、部分的に理解できましたが、まだ質問する必要があります..
指を使って引き出しを開きます。
ユーザーがいずれかのアイコンをポイントした後、コードを通じてドロワーを閉じます。

width=110 は、ドロワーに 3 つのアイコンがあり、下の図のように右側に配置したいためです。

私はこれを使っています

<translate android:fromXDelta="80%" android:toXDelta="100%" android:duration="300"/>

それは一種の機能ですが、閉じた後、再び飛び出します。どうして..

また、幅=110を石で書くのは良くありませんが、現時点ではより良い解決策を思いつくことができませんでした. text_ball、delete_ball、および plus_ball はすべて、ldpi、hdpi、および mdpi のセットです。

これが2つの質問のように聞こえる場合は申し訳ありません. 正しい答えを調理するために、できるだけ多くの情報を入力しようとしています。

<LinearLayout android:id="@+id/linearLayoutSlidingDrawerRight"
    android:layout_width="110dip"
    android:layout_height="wrap_content"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_alignParentRight="true"
    android:layout_centerVertical="true"
    >

    <com.bent.solid.editimage.WrappingSlidingDrawer android:id="@+id/slidingDrawerRight"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:handle="@+id/slideHandleButtonRight"
        android:content="@+id/contentLayout2"
        android:orientation="horizontal"
        android:background="@null">

        <ImageButton android:id="@+id/slideHandleButtonRight"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/icon"
            android:onClick="btnSlidingDrawerHandler">
        </ImageButton>

        <RelativeLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/contentLayout2"
            android:orientation="vertical"
            android:background="@null"

            >

            <ImageButton android:id="@+id/btn_A"
                android:layout_height="60dip"
                android:layout_width="60dip"
                android:text="Button_A"
                android:background="@android:color/transparent"
                android:src="@drawable/plus_ball"
                android:onClick="btnAListener"
                android:gravity="right"
                android:scaleType="fitXY">
            </ImageButton>

            <ImageButton android:id="@+id/btn_B"
                android:layout_height="60dip"
                android:layout_width="60dip"
                android:layout_below="@+id/btn_A"
                android:text="Button_B"
                android:background="@android:color/transparent"
                android:src="@drawable/text_ball"
                android:gravity="right"
                android:onClick="btnBListener"
                android:scaleType="fitXY">
            </ImageButton>

            <ImageButton android:id="@+id/btn_C"
                android:layout_height="60dip"
                android:layout_width="60dip"
                android:layout_below="@+id/btn_B"
                android:text="Button_B"
                android:background="@android:color/transparent"
                android:src="@drawable/delete_ball"
                android:gravity="right"
                android:onClick="btnCListener"
                android:scaleType="fitXY">
            </ImageButton>

        </RelativeLayout>
    </com.bent.solid.editimage.WrappingSlidingDrawer>
</LinearLayout>
4

1 に答える 1

1

私があなたを正しく理解していれば、あなたの質問はこれに非常に単純化することができます:

アニメーションを実行していますが、アニメーションの最後で、レイアウトが最終的なアニメーション状態ではありません。代わりに元の状態に戻ります。これを止めるにはどうすればよいですか?

animコードでは、がアニメーション変数であると仮定して、アニメーションanim.setFillAfter(true);を開始する前に呼び出すだけです。

于 2011-07-10T10:47:08.203 に答える