2013-10-03 4 views
5

私は一定の限界を超えて伸びない垂直線形レイアウトを持っています。LinearLayoutの最大高さはありますか?

これは、だから私の考えがあることである(それは全幅と巨大でなければなりません)これはノートリミングが設定されたレイアウトであるImageViewの http://tinypic.com/r/20nm6s/5

http://tinypic.com/r/vzk7kw/5

centerCropとレイアウトです私のレイアウトで見ていない暗黙的な最大高さですが、どこにあるのかわかりません。私のエラーを見つけられますか?

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      > 
    <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical" 
      android:background="@drawable/dropshadow" 
      > 
     <TextView 
       android:id="@+id/heading" 
       android:layout_gravity="center" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_marginTop="5dp" 
       android:layout_marginLeft="10dp" 
       android:layout_marginRight="10dp" 
       /> 
     <ImageView 
      android:id="@+id/featuredimage" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:adjustViewBounds="true" 
      android:maxHeight="1000dp" 
      android:scaleType="centerCrop" 
      android:layout_marginTop="10dp" 
      android:layout_marginBottom="10dp" 
      /> 
    </LinearLayout> 
</RelativeLayout> 
+0

投稿コードにLinearLayoutを使用している点はありません。相対レイアウトを使用すると、それを達成することができます。 – dcanh121

+0

イメージの実際のピクセルサイズはどのくらいですか?イメージをロードして設定するコードを投稿できますか? –

+0

'ScrollView'に' maxHeight'を提供する解決策が見つかりました。このソリューションは、あらゆるタイプのビューにも使用できます。 http://chintanrathod.com/maxheightscrollview-in-android-using-android-studio/ –

答えて

2

レイアウトの「暗黙の」最大高さは、その親の高さです。どちらのレイアウトでもwrap_contentを使用しているため、親はで、実際にはの画面領域から、使用している他のビュー(たとえばTextView)を差し引いたものです。 ScrollViewのようなスクロールコンテナに配置しない限り、画面のサイズを超えることはありません。 ImageViewのデフォルトscaleTypefitCenterあるので

あなたは作物を削除すると、あなたのImageViewは「全幅と巨大な」を表示されない理由があります。この特定のビューは、レイアウトのの幅がであるため、アスペクト比を維持しながらイメージを縮小します。

+1

また、RelativeLayoutにあるLinearLayoutは無駄です。 XMLNSタグをLinearLayoutに配置し、RelativeLayoutを削除します。 – David

+1

リニアを削除し、適切な属性で相対を使用することもできますが、リニアは簡単です。いずれにせよ、あなたは必ず両方を必要としません。 – Geobits

関連する問題