0

何らかの理由で、私のCardViewがグリッドビューの画像の最初の行のみを表示しています。 (または、私のGridViewは最初の行しか表示していません - 私は言うことができません)。CardViewはGridLayoutの最初の行を表示します

グリッドビューに画像を動的に追加し、gridAdapter.notifyDataSetChanged()を使用しています。おそらくこれがCardViewの高さが適応していない理由です。 android:layout_height = "500dp"をCardViewに追加すると、すべての画像が表示されます。

CardViewでコンテンツをラップすると、(高さをハードコーディングする以外の)すべての画像が表示されるのですか?

写真の行数が動的なので、高さをハードコードすることはできません。私だけが、この場合ago.For数日、この問題に直面した画像の2行 enter image description here

<android.support.v7.widget.CardView 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
xmlns:android="http://schemas.android.com/apk/res/android"> 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    android:padding="2dp"> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="@string/m_photos" /> 

    <GridView 
     android:id="@+id/m_grid" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_margin="2dp" 
     android:clickable="true" 
     android:columnWidth="90dp" 
     android:drawSelectorOnTop="true" 
     android:focusable="true" 
     android:gravity="center" 
     android:numColumns="auto_fit" 
     android:stretchMode="none" 
     android:verticalSpacing="2dp" /> 
</LinearLayout> 
</android.support.v7.widget.CardView> 

答えて

0

が実際に存在する場合であっても、画像の1行を示す

、Wrap_contentはperfectly.So動作しません固定されたdpでレイアウトの高さを使用し、ディメンションを使用します。それは私の場合のために働く。

<GridView 
    android:id="@+id/m_grid" 
    android:layout_width="match_parent" 
    android:layout_height="@dimen/gvHeight" 
    android:layout_margin="2dp" 
    android:clickable="true" 
    android:columnWidth="90dp" 
    android:drawSelectorOnTop="true" 
    android:focusable="true" 
    android:gravity="center" 
    android:numColumns="auto_fit" 
    android:stretchMode="none" 
    android:verticalSpacing="2dp" /> 
+0

複数の写真がある場合に機能します。しかし、写真の数は動的で、写真が1行しかない場合は複数の行を表示したくありません。 – Vinnie

関連する問題