перепутал насчет "fill_parent" в TableLayout - PullRequest
0 голосов
/ 01 февраля 2012

Во-первых, xml выглядит следующим образом:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
    <TableLayout
        android:layout_width = "wrap_content"
        android:layout_height = "wrap_content"
        android:stretchColumns = "1">

        <TableRow>
            <TextView
                android:text = "Test Layout:"
                android:id = "@+id/LayoutTextView01"
                android:layout_width = "wrap_content"
                android:layout_height = "wrap_content"
                android:textColor = "@color/red_bg" />
            <EditText
                android:text = ""
                android:id = "@+id/EditText01"
                android:layout_width = "fill_parent"
                android:layout_height = "wrap_content" />
        </TableRow>

        <TableRow android:gravity = "right">
            <Button
                android:text = "test"
                android:id = "@+id/layoutButton01"
                android:layout_width = "fill_parent"
                android:layout_height = "wrap_content" />
        </TableRow>

    </TableLayout>


</LinearLayout>

Мой вопрос:

1. fill_parent означает заполнить все пробелы своего родительского контейнера.И родительский элемент Button должен иметь такой же размер родительский элемент для EditView , а для Button и EditView оба устанавливают для android: layout_width значение «fill_parent», они должны иметь одинаковый размер, например:

________ ___________________
|_______| |__________________|
              __________________
             |__________________|

Норезультат такой:

________ ___________________
|_______| |__________________|
                         ___________
                         |__________|

почему?

Ответы [ 2 ]

0 голосов
/ 04 февраля 2012

Проблема в том, что ваша кнопка думает, что она находится в столбце 0. Если вы добавите другой элемент, он будет в столбце 1 и будет иметь такую ​​же ширину.Я попробовал это, и это должно дать вам результаты, которые вы искали.

<TableRow android:gravity = "right">
        <TextView
            android:text = ""
            android:layout_width = "wrap_content"
            android:layout_height = "wrap_content" />
        <Button
            android:text = "test"
            android:id = "@+id/layoutButton01"
            android:layout_width = "fill_parent"
            android:layout_height = "wrap_content" />
</TableRow>

Счастливое кодирование.

0 голосов
/ 01 февраля 2012

Может быть, это поможет, если вы добавите android:layout_column="1" к вашему button tag.

Кстати.Как я могу рекомендовать вопросы вместо того, чтобы отправлять ответ?

...