Android 为什么布局“U宽度=”;包装“U内容”;占据整个屏幕的宽度?

Android 为什么布局“U宽度=”;包装“U内容”;占据整个屏幕的宽度?,android,android-layout,android-widget,Android,Android Layout,Android Widget,使用此xml: <TableRow > <Button android:id="@+id/buttonNext" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Next" android:textAppearance="?android:attr/textAppea

使用此xml:

<TableRow >
    <Button
        android:id="@+id/buttonNext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Next"
        android:textAppearance="?android:attr/textAppearanceMedium" />
</TableRow>


我希望“wrap_content”的宽度仅为显示按钮上的文本所需的宽度,但按钮垄断了整个屏幕的宽度…?

您看过这个问题吗


这个问题可能是由于在
表格布局中使用
android:stretchColumns=“*”
造成的,但是如果没有剩下的XML,就很难判断了。

您看过这个问题吗

该问题可能是由于在
表格布局中使用
android:stretchColumns=“*”
造成的,但是如果没有其余的XML,就很难判断。

不理解….
无法查看TableRow的布局宽度属性和布局高度属性。没有这些属性,任何元素都无法显示。

不理解….

无法查看TableRow的layout\u width属性和layout\u height属性。任何元素都不能没有这些属性。

您的问题是xml中的宽度规范被忽略。从:

TableRow的子级不需要在XML文件中指定布局宽度和布局高度属性。TableRow始终将这些值分别强制为MATCH_PARENT和WRAP_CONTENT

另外,你有没有令人信服的理由使用绝对像素?这通常被认为是不好的做法


p.p.S.双重张贴我的答案与您的问题的双重张贴一致。:)

您的问题是xml中的宽度规范被忽略。从:

TableRow的子级不需要在XML文件中指定布局宽度和布局高度属性。TableRow始终将这些值分别强制为MATCH_PARENT和WRAP_CONTENT

另外,你有没有令人信服的理由使用绝对像素?这通常被认为是不好的做法


p.p.S.双重张贴我的答案与您的问题的双重张贴一致。:)

我们需要查看布局中TableRow之外的内容-这可能是您的问题我们需要查看布局中TableRow之外的内容-这可能是您的问题显然不是真正需要的,因为我的工作如下所示。我必须添加一个textView“shim”给按钮和文本视图都加一个布局权重:显然不是真的需要,因为我让它如下图所示工作。我必须添加一个文本视图“垫片”,给按钮和文本视图加一个布局权重: