Android ScrollView中的Textviews高度相同

时间:2017-04-26 04:51:51

标签: android android-layout textview android-scrollview

我有一个带有3个TextViews的Android ScrollView:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fillViewport="true"
    xmlns:android="http://schemas.android.com/apk/res/android">
        <LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
            <TextView
                android:id="@+id/text1"
                android:layout_weight="1"
                android:text="short text 1"
                android:textSize="30dp"
                android:padding="16dp"
                android:layout_width="match_parent"
                android:layout_height="0dp" />
            <TextView
                android:id="@+id/text2"
                android:layout_weight="1"
                android:text="Very long text Very long text Very long text Very long text"
                android:textSize="50dp"
                android:padding="16dp"
                android:layout_width="match_parent"
                android:layout_height="0dp" />
            <TextView
                android:id="@+id/text3"
                android:layout_weight="1"
                android:text="short text 2"
                android:textSize="30dp"
                android:padding="16dp"
                android:layout_width="match_parent"
                android:layout_height="0dp" />
        </LinearLayout>
</ScrollView>

我想要以下行为:

  • 所有TextView都具有相同的高度 - 工作
  • 如果文字没有填满整个屏幕,TextViews应填写整个屏幕(因此fillViewport="true") - 作品
  • 如果文本大于屏幕,则ScrollView开始滚动,TextViews的高度仍然相等(所有TextViews的高度等于最高TextView) - 不起作用:TextView被剪裁而ScrollView不会滚动。< /强>

以下是屏幕的外观(TextView2被裁剪) That's how the screen looks like

2 个答案:

答案 0 :(得分:0)

你应该使用android:weightSum="3" 在LinearLayout中。在权重基础上,linearLayout在TextView中分为三个等于部分,如果textview使用android:layout_weight="1"

答案 1 :(得分:0)

您可以尝试使用

 android:layout_height="wrap_content"
在textview中删除

  

机器人:layout_weight = “1”

      <TextView
            android:id="@+id/text1"
            android:text="short text 1"
            android:textSize="30dp"
            android:padding="16dp"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />