0

私はAndroid 2.3で作業していますが、少し面倒な問題があります。

私は 2 つのレイアウトを重ねて配置していFrameLayoutます。アニメーション中にトップ レイアウトの一部が画面外に移動.layout()し、アニメーションの最後にメソッドが呼び出されます。これはうまく機能し、UI は正しく移動され、toplayout のボタンは引き続きクリック可能です。アニメーションの後、toplayout が画面外に移動すると、2 番目のレイアウトが表示されます。このレイアウトにはクリック可能なリストが含まれており、各セルにはクリックするImageViewと更新される があります。ただし、私の問題は、テーブル セルをクリックしてImageView更新すると、ビュー全体がリセットされ、アニメーションと toplayout の新しい場所が無視されることです。アニメーションが発生しなかったため、 toplayout を上に戻すだけです。

私はを使用しTranslateAnimation、設定されたfillafterもtrueに設定されています。

私が見逃している可能性のあるものについて何か提案はありますか。

4

1 に答える 1

0

あなたの問題は FrameLayout 内にオブジェクトを配置していると思います。この回答で説明されているように、場所を設定して FrameLayout 内にビューを配置することはできません。

FrameLayout を使用すると、すべての子が画面の左上に固定されますが、パディングを設定することである程度制御できます。異なるパディング値を異なる子に設定すると、FrameLayout の異なる場所に表示されます。

代わりにパディングを使用して、ビューを画面外に「移動」します。

于 2013-06-27T08:45:41.127 に答える