使LinearLayout将其高度调整为具有“wrap_content”高度的TextView

时间:2018-02-27 11:44:34

标签: android android-layout android-linearlayout textview

我的LinearLayout包含ImageView,其高度固定,TextView高度为wrap_content。如果文字不适合一行,我希望LinearLayout增长到适合整个TextView

我的代码:

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="10dp"
    android:orientation="vertical">

    <ImageView
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:layout_margin="5dp"
        android:scaleType="fitCenter"
        android:src="@drawable/question_mark"/>

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:singleLine="false"
        android:text="Some long text that doesnt fit on one line"/>
</LinearLayout>

上面示例中的LinearLayout未调整大小,因此我只看到"Some long text",然后隐藏TextView的其余部分。

根据LinearLayout

,是否可以让TextView调整大小?

我知道我可以使用RelativeLayout和其他类型的布局来实现这一目标,但我要问的是使用LinearLayout的解决方案。

1 个答案:

答案 0 :(得分:0)

试试这个:

enter image description here

<LinearLayout android:layout_width="100dp"
    android:layout_height="wrap_content"
    android:layout_margin="10dp"
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:layout_margin="5dp"
        android:scaleType="fitCenter"
        android:src="@drawable/ic_launcher_background"/>

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="Some long text that doesnt fit on one line"/>

</LinearLayout>