Подтвердить что ты не робот

Автоматические изображения GridView

im пытается получить изображения, отображаемые в GridView, и получить столбцы автоматически, пока мне нужно вручную установить количество столбцов, которые не то, что я хочу сделать, так как это повлияет на то, насколько велики изображения экраны различного размера. Я пробовал настроить его на auto_fit, но он отображает только 2 столбца в середине экрана. Это то, что я пытаюсь достичь: (Каждый красный квадрат представляет изображение)

enter image description here

а затем, когда вы переходите в ландшафтный режим, я хочу, чтобы столбцы автоматически подходили так, чтобы все было четным. Любая помощь будет очень признательна, спасибо:)

4b9b3361

Ответ 1

Экспериментируйте с атрибутами GridView, в частности android:numColumns="auto_fit" и android:stretchMode. Для меня работает следующее:

<GridView 
    android:id="@+id/myGrid"
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"
    android:padding="10dp"
    android:verticalSpacing="10dp"
    android:horizontalSpacing="10dp"
    android:numColumns="auto_fit"
    android:columnWidth="60dp"
    android:stretchMode="columnWidth"    
    android:gravity="center"
/>

Ответ 2

Я не уверен, почему кто-то проголосовал за мой ответ выше, поэтому я снова проголосовал за это: мне пришлось решить подобную проблему программно (с помощью GridView для пользователей ImageView). Некоторые коды удалены для ясности:

    int iDisplayWidth = getResources().getDisplayMetrics().widthPixels ;

    iImageWidth = iDisplayWidth
        / iNumberOfColumns ; 
    gridview.setColumnWidth( iImageWidth );
    gridview.setStretchMode( GridView.NO_STRETCH ) ;    
    /* wrap_content in the xml file is supposed to do this, but it didn't seem to work */

С уважением,

Piesia