动态更改android gridview中的列号?

Ram*_*Ram 8 android gridview

我的应用程序以横向方向在gridview中显示图像图标.为此,我使用xml作为

<GridView
    android:id="@+id/gridview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:numColumns="4"
    android:columnWidth="100px"
    android:stretchMode="columnWidth"
    android:gravity="center"/>
Run Code Online (Sandbox Code Playgroud)

对于纵向方向,我想在gridview列中只显示两个图像图标.怎么做?

gun*_*nar 19

通过使用自适应资源:确保在资源文件夹中/res有以下文件夹:values-landvalues-port.在这两个文件夹中添加一个资源文件,我们称之为integers.xml.

/values-land/integers.xml中,您将至少拥有:

<resources>
    <item name="grid_rows" type="integer">4</item>
</resources>
Run Code Online (Sandbox Code Playgroud)

而对于values-port/integers.xml:

<resources>
    <item name="grid_rows" type="integer">3</item>
</resources>
Run Code Online (Sandbox Code Playgroud)

布局更改为:

<GridView
    android:id="@+id/gridview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:columnWidth="100px"
    android:gravity="center"
    android:numColumns="@integer/grid_rows"
    android:stretchMode="columnWidth" />
Run Code Online (Sandbox Code Playgroud)

注意@ integer/grid_rows的存在