wrap_content 不包装内容

Posted

技术标签:

【中文标题】wrap_content 不包装内容【英文标题】:wrap_content doesn't wrap content 【发布时间】:2019-12-06 02:24:32 【问题描述】:

我是 android 编程的初学者。我正在创建一个应用程序,我想给文本加下划线。请查看我的代码 sn-p

<LinearLayout
android:layout_
android:layout_
android:orientation="vertical">
    <TextView
        android:layout_
        android:text="hello world"
        android:id="@+id/textview"
        android:layout_
         />
    <View
        android:layout_
        android:layout_
        android:background="@color/colorPrimary"/>
</LinearLayout>

实际上,我希望 textview 内容和 View 的宽度相同。但视图宽度大小与全屏宽度相同。

【问题讨论】:

创建下划线注释掉 标记并将其添加到您的代码 textview.setPaintFlags(textview.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG); 但我也想使用 View 和 In Xml 为 textview 加下划线 然后为视图和文本视图设置一个固定大小。例如 300dp 而不是 wrap_content 好的。为什么 wrap_content 不起作用? 将视图的 xml 更改为:android:layout_width="match_parent" 【参考方案1】:

如果您不指定宽度或高度,视图视图将始终全屏显示。 因此,您想使用CoordinatorLayoutRelativeLayout 以使View 宽度与TextView 相同。

【讨论】:

我都指定了 View Android 上的wrap_content 将始终作为match_parent。【参考方案2】:

在视图中为文本添加下划线您可以编辑如下所示的字符串,

 <resources>
    <string name="string_name">This is an <u>underline</u>.</string>
</resources>

并将其添加到您的文本视图中,例如,

<TextView
    android:layout_
    android:text="@string/string_name"
    android:id="@+id/textview"
    android:layout_ />

希望对你有帮助!!

【讨论】:

以上是关于wrap_content 不包装内容的主要内容,如果未能解决你的问题,请参考以下文章

从互联网加载图像后,Viewpager 不包装内容

onMeasure(): wrap_content,我怎么知道要包装的尺寸?

Android 圆形按钮实现

Android Studio基础ImageView使用

如何让 UIView 在 iOS 中“包装内容”?

Android 布局 - 如果内容宽度太宽,“wrap_content”不允许显示右侧的元素