2

我正在使用 TableLayout 进行设置布局。我所有的行都填满了屏幕。而且因为图像更容易理解,所以这里的情况:

在此处输入图像描述

这是布局代码的一部分(我没有放所有内容,因为有很多行,都一样):

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/ScrollView01"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <TableLayout 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:isScrollContainer="true"
        android:orientation="vertical"
        android:scrollbarAlwaysDrawVerticalTrack="true"
        android:scrollbars="vertical">

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp" >

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:id="@+id/textIpBox"
                android:text="@string/ipAddress" />

        </TableRow>

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp" >

            <View
                android:id="@+id/dividerIpbox"
                android:background="@android:drawable/divider_horizontal_dim_dark" />

        </TableRow>

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp" >

            <TextView
                android:id="@+id/textPortSend"
                android:text="@string/sendPort" />

        </TableRow>

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp" >

            <EditText
                android:id="@+id/entryPortSend"
                android:inputType="number"
                android:background="@android:drawable/editbox_background" />

        </TableRow>

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp" >

            <View
                android:id="@+id/dividerPortSend"
                android:background="@android:drawable/divider_horizontal_dim_dark" />

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp" >

            <Spinner
                android:id="@+id/spinner"
                android:prompt="@string/home_page" />

        </TableRow>

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp" >

            <TextView
                android:id="@+id/textCurrentWifi"
                android:text="@string/currentWifi" />

        </TableRow> 

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:padding="5dp" >

            <Button
                android:id="@+id/buttonSave"
                android:text="@string/validate" />
        </TableRow>

    </TableLayout >

</ScrollView>

我肯定错过了一些东西,android:layout_width="fill_parent"但我看不到是什么。

layout_width当我的所有设置都设置为时,我不太明白为什么它不起作用fill_parent

4

2 回答 2

2

我不同意。这可能已经解决了问题,但是将线性布局更改为表格布局并不能修复表格布局。
尝试

android:stretchColumns = "1,2,3"
android:shrinkColumns = "1,2,3"

这将告诉应用程序哪些列应该扩大/缩小以适应屏幕。

于 2014-02-13T03:05:38.167 回答
1

我找到了问题,尝试将您的 TableLayout 更改为 LinearLayout

<LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:isScrollContainer="true"
    android:orientation="vertical"
    android:scrollbarAlwaysDrawVerticalTrack="true"
    android:scrollbars="vertical">
于 2012-10-29T16:10:10.440 回答