2012-01-08 4 views
0

4x3アスペクトの画像を縦方向の画面の下半分に表示し、画面を横向きで表示する簡単なアプリを開発中です。ポートレートの作品と320x240の画像(ネット上にロードされている)にそのサイズが表示されます。ImageViewはフルスクリーンでなければなりませんが、高さが間違っています

風景に回転し、私はポートレートレイアウトの上半分を省略し、ImageSwitcher全画面を配置する別のレイアウトをres/layout-landで使用します。いくつかの半透明のコントロールは、画像をオーバーレイ、これはImageSwitcherとRADIOGROUPとレイアウトXMLでマージタグを使用する:ImageSwitcherで

<?xml version="1.0" encoding="utf-8"?> 
<merge xmlns:android="http://schemas.android.com/apk/res/android"> 

    <ImageSwitcher 
     android:id="@+id/imageSwitcher" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_gravity="fill"> 
    </ImageSwitcher> 

    <RadioGroup 
     android:id="@+id/radioGroup" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom|left" 
     android:orientation="horizontal"> 
    ... 
</merge> 

ImageViewsは、別個のレイアウトからロードされる:

<?xml version="1.0" encoding="utf-8"?> 
<ImageView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_gravity="fill" 
    android:scaleType="fitXY" 
    android:adjustViewBounds="true" 
    android:contentDescription="@null"> 
</ImageView> 

何らかの理由で、画像ビューが画面に表示されません。階層ビューアでビュー階層を調べると、ImageSwitcherのサイズは480x295(全画面マイナス最上部のバー)ですが、含まれるImageViewのサイズは480x240です。

私はImageSwitcherとImageViewsのすべてのレイアウト設定を手こずって2時間ほど苦労しましたが、ImageViewを親の480x295の寸法に合わせることができません。どんな助けや洞察も感謝します。

答えて

1

問題が見つかりました。私はXMLレイアウトからImageSwitcherのImageViewを膨らませていましたが、これはうまくいかないようです。コードでImageViewを作成し、それぞれに適切なFrameLayout.LayoutParamsを割り当てます。

ここでは、hierarchyviewerが大きな助けになりました。ImageViewsのレイアウトパラメータは、私が期待していたものではないことが強調されました。

+0

コードを表示できますか? – CamHart

関連する問題