Intereting Posts
Неожиданный префикс пространства имен «xmlns», найденный для фрагмента тега Неожиданный префикс пространства имен «карта», найденный для фрагмента тега Использование камеры в эмуляторе Android Android – Как переопределить кнопку «Назад», чтобы она не закончила () мою активность? Отображение списка изображений Listview / ExpandableListView при вызове notifyDataSetChanged Как передать строку html в webview на android Android: горизонтальная прокрутка с тремя линейными макетами Phonegap Build: белый список доменов Google для API v3 Подавлять / Блокировать BroadcastReceiver в другом приложении Кордонский файловый плагин – читать из папки www? Как обрезать изображение в Android? Включить / отключить подключение к данным в программном обеспечении Android Получение исключений java.lang.NoClassDefFoundError: com.google.firebase.FirebaseOptions после обновления до новой firebase Есть ли план по включению Android PdfRenderer в библиотеку поддержки? Увеличение громкости записанного аудио Как я могу получить доступ к сохраненным значениям компонента из другого класса

Какой stretchMode использовать в GridView на android

Ниже приведен мой xml-код:

<?xml version="1.0" encoding="utf-8"?> <GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/gridviewgallery" android:layout_width="fill_parent" android:layout_height="fill_parent" android:columnWidth="@dimen/gridview_column_width" android:numColumns="auto_fit" android:verticalSpacing="0dp" android:horizontalSpacing="0dp" android:stretchMode="columnWidth" android:gravity="center" android:background="#444444" /> 

Когда я использую android: stretchMode = "columnWidth", он создает промежуток между столбцами (хотя он заполняет ширину экрана) И если я использую android: stretchMode = "none", он выравнивается влево, и налево остается правый Сторона экрана (хотя теперь нет разрыва между столбцами) Проблема в том, что я хочу: заполнить ширину экрана, а также пробел между столбцами. Как его достичь?

Solutions Collecting From Web of "Какой stretchMode использовать в GridView на android"

Комбинация android:numColumns="auto_fit" android:stretchMode="columnWidth" и android:columnWidth="60dp" даст вам макет, который настраивается для разных размеров экрана. Гораздо лучше, чем фиксировать количество столбцов. См. Пример ниже …

 <GridView android:id="@+id/tablegrid" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#ffff7965" android:horizontalSpacing="5dp" android:verticalSpacing="5dp" android:layout_marginStart="5dp" android:layout_marginLeft="5dp" android:numColumns="auto_fit" android:stretchMode="columnWidth" android:gravity="center" android:columnWidth="60dp" /> 

Это очень простой чувак, просто удалите строку

 android:columnWidth="@dimen/gridview_column_width" 

Вы можете указать любое количество столбцов, мне задан номер столбца = 4

 android:numColumns = "4" 

Это отлично работает для меня

Я знаю, что этот вопрос немного стар, но вот ответ, который я нашел, надеется, что это помогает кому-то другому, просто для android:stretchMode использует spacingWidthUniform как он говорит в документации, это равномерно растягивает расстояние между столбцами.

Для получения дополнительной информации см. Ссылку выше.