2011-10-24 12 views
1

2つのボタンでダイアログを作成するアクティビティがあります。ボタンをクリックすると、ビューフリッパーを使用してアニメーションを使用してダイアログの表示を変更しています。 方向が変更されたら、ビューフリッパーの2番目のビューを表示するには、横向きのxmlファイルを使用します。それ、どうやったら出来るの?Androidのダイアログの向き

+0

res/layout-landフォルダにランドスケープXMLを既に作成しているとしましょう...あなたの問題は何ですか?それは働いていないのですか?それはクラッシュですか?より具体的にしてください。 – Cristian

+0

実際には、本当の問題は、私は別のレイアウトのIDとレイアウトランドXMLS、および異なる振る舞いをしたいということです。私はそれらのいずれかに存在するIDでfindViewByIdを行うと、それらを膨張させた後、それはそのIDを知らない...ところで、私は継承ビューのコンストラクタでfindViewByIdを行い、悪いということでしょうか? –

答えて

1

ビューフリッパーの2つのxmlレイアウトを作成します。 1つはfliper.xmlと呼ばれ、res/layoutに配置されています。 fliper.xmlとも呼ばれる別のファイルを作成し、res/layout-landに配置します。この2つ目は、風景モードのときに使用されます。詳細はSupporting Multiple Screensを参照してください。

+0

ありがとうございますが、私はレイアウトランドについて知っています。しかし、2番目のビューはインフレータで作成されます。 inflater.inflate行を実行せずに向きを変更すると、レイアウト土地xmlが使用されますか? –

+0

はい、そうするべきです。 –

+0

2つのレイアウトに異なるIDを持つ異なるアイテムがある場合、そのデータ(リスナー、テキストなど)はどこで設定しますか?今日、私はIDが、私はそれらをfindViewByIdことができない種類のレイアウト間で異なっている場合は、デバイスを回転させたときの動作を正確に扱うようにしたい場合は –