如何设置高度布局取决于文本长度?

时间:2013-11-24 09:50:06

标签: android android-layout height

我有Scrolview,Layout和TextView。

 <ScrollView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/scrollView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@+id/Layout"
              android:orientation="vertical"
              android:background="@null"
              android:layout_width="match_parent"
              android:layout_height="match_parent">
    <TextView
            android:id="@+id/textView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Text"
            android:layout_gravity="left|center_vertical"/>
    </LinearLayout>
    </ScrollView>

如何设置高度布局取决于文本长度?如果文本很短,布局高度应该等于屏幕高度。但是当文本很长时(例如更多100个句子),布局高度应该大于屏幕高度,并且应该取决于文本的长度。

2 个答案:

答案 0 :(得分:0)

android:layout_height="wrap_content"放到你的布局上,然后相应地缩放它。

答案 1 :(得分:0)

android:fillViewport="true"添加到ScrollView,然后设置子android:layout_height="wrap_content"。 (摘自ScrollView's handy trick

<ScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/scrollView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    android:fillViewport="true" >
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:id="@+id/Layout"
          android:orientation="vertical"
          android:background="@null"
          android:layout_width="match_parent"
          android:layout_height="wrap_content">
    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="New Text"
        android:layout_gravity="left|center_vertical"/>
    </LinearLayout>
</ScrollView>