3

我正在尝试制作类似于网格布局的布局,但我受限于 Android 2.0

有没有人有任何想法?

<?xml version="1.0" encoding="UTF-8"?>
<GridLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:columnCount="2"
    android:rowCount="13" >

    <TextView
        android:layout_gravity="fill_horizontal"
        android:text="SN : " />

    <TextView
        android:id="@+id/snTextView"
        android:layout_gravity="fill_horizontal" />


    <TextView
        android:layout_gravity="fill_horizontal"
        android:text="Ver : " />

    <TextView
        android:id="@+id/verTextView"
        android:layout_gravity="fill_horizontal" />

    <TextView
        android:layout_gravity="fill_horizontal"
        android:text="Type : " />

    <TextView
        android:id="@+id/typeTextView"
        android:layout_gravity="fill_horizontal" />

    <TextView
        android:layout_gravity="fill_horizontal"
        android:text="OD : " />

    <TextView
        android:id="@+id/odTextView"
        android:layout_gravity="fill_horizontal" />

    <TextView
        android:text="Closing Mode"
        android:layout_gravity="fill_horizontal" />

    <TextView
        android:id="@+id/closingModeTextView"
        android:layout_gravity="fill_horizontal" />

    <TextView
        android:text="CT : "
        android:layout_gravity="fill_horizontal" />

</GridLayout>

编辑:

嗯,我大约半小时前开始在 .xml 文件中编码,我将在上面发布代码。为了看看它的第一部分看起来如何,我去了图形布局,然后出现了以下错误......

“com.android.layoutlib.bridge.MockView 无法转换为 android.view.ViewGroup 异常详细信息记录在 Window>Show View> Error Log 中找不到以下类:- GridLayout(Fix Build Path, Edit XML)”

我猜可能是其他问题,但在图形布局调色板中没有列出 GridLayout,而其余的是(线性(垂直/霍兹)、相对、框架、片段、表格等)

4

2 回答 2

9

GridLayout已向后移植以与 API 级别 7 及更高级别兼容。它是(某种)支持库的一部分。下载支持库后,您会在本地 sdk 文件夹中找到一个 Android 库项目,该文件夹位于:

<sdk_folder>\extras\android\compatibility\v7\gridlayout

将其设置为您正在处理的项目的依赖项。之后,您需要确保将整个项目中的所有引用都指向该版本,而不是 15 级版本,以支持 ICS 之前的设备。用法应该是相似的,如果不完全相同的话。

另请参阅:android API 10 中的网格布局支持

于 2012-06-20T19:26:08.433 回答
2

如果您想要在每行中具有相同数量的列的布局,则 GridView 是一种选择。这样做的好处是您可以定义一个适配器来将其分配给 gridView ,它将保存您的所有视图。您可以在 android 上找到大量关于此的示例。

现在,另一种选择是您想要一个布局,该布局实际上每行中的列数不相等(与 google play 应用程序相同)。在这种情况下,您仍然可以使用 GridLayout。它在与最新版本一起下载的兼容性库中可用。它可以作为库项目添加到您的应用程序中,并以与在 android 4.0+ 中使用它的方式完全相同的方式使用它。我认为这也需要添加兼容性库。我认为此时您不会找到太多关于如何将兼容性网格布局添加到您的项目的文档,但这与添加任何库项目相同。您可以在兼容性 v7 下的 android sdk 文件夹中找到项目代码。

于 2012-06-20T19:28:28.957 回答