0

私はこのレイアウトを持っています:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:gravity="left">
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Some text" />
    </LinearLayout>
    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView"/>
</LinearLayout>

ただし、最初のテキストビュー(LinearLayoutのテキストビュー)に大量のテキストがある場合、2番目のテキストビューは画面から消えます。これは、android:layout_weigh="1"を線形レイアウトに設定することで解決できます。ただし、この場合、線形レイアウトはすべてのスペースを埋めます。線形レイアウトでは、短いテキストの場合は最小限のスペースを埋め、線形レイアウトの場合は多くのテキストを非表示にしないようにする必要があります。

4

2 に答える 2

0

最初のテキストビューが水平方向のスペースを占有しすぎると、2番目のテキストビューが画面の外側にレンダリングされます...

2番目のテキストビューが画面の外にレンダリングされないようにするには、最初のテキストビューの水平方向のサイズを制限する必要があります。最初のtextviewに固定数値のandroid:layout_widthを与えることができます。android:singleLineをfalseに設定できます。android:maxWidthを適切な値に設定できます。(私はこれらの解決策を試していませんが、うまくいくはずです)。

または、2つのテキストビューを続けて使用するのではなく、1つのテキストビューを使用することを検討してください。

于 2012-06-17T23:12:26.840 に答える
0

解決策は、最初のTextViewをScrollViewに配置し、2番目のTextViewを決して非表示にならない固定フッターに配置することです(これはRelativeLayoutで実行できます)。

最初のTextViewにテキストが多すぎる場合は、2番目のTextViewを表示したままスクロールできます。

于 2012-06-17T23:16:24.077 に答える