#android #android-layout #textview
#Android #android-layout #textview
Вопрос:
Я пытаюсь заставить TextView переносить текст в несколько строк, но, похоже, он всегда просто обрывается в конце первой строки. Вот соответствующий XML с моей точки зрения:
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:id="@ id/relExtraInfo"
android:layout_below="@ id/titleContainerLayout">
<RelativeLayout android:layout_height="wrap_content"
android:layout_width="fill_parent" android:layout_below="@ id/titleArtwork"
android:id="@ id/relStarring">
<TextView android:textStyle="bold" android:layout_height="wrap_content"
android:text="Starring:" android:layout_width="wrap_content"
android:id="@ id/lblStarring" android:layout_alignParentLeft="true"></TextView>
<TextView android:layout_alignTop="@ id/lblStarring"
android:text="This is a very long peice of text to try and get the TextView to spill over multiple lines."
android:layout_alignBottom="@ id/lblStarring" android:id="@ id/txtStarring"
android:layout_toRightOf="@ id/lblStarring" android:layout_width="fill_parent"></TextView>
</RelativeLayout>
<RelativeLayout android:layout_height="wrap_content"
android:layout_width="fill_parent" android:id="@ id/relDirector"
android:layout_below="@ id/relStarring">
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content" android:layout_alignParentLeft="true"
android:text="Director:" android:textStyle="bold" android:id="@ id/lblDirector"></TextView>
<TextView android:layout_height="wrap_content"
android:text="TextView" android:layout_width="wrap_content"
android:layout_alignTop="@ id/txtDirector"
android:layout_alignBottom="@ id/txtDirector" android:id="@ id/txtDirector"
android:layout_toRightOf="@ id/lblDirector" android:ellipsize="none"></TextView>
</RelativeLayout>
</RelativeLayout>
Я пробовал разные способы переноса, я установил elipsize в none, scrollHorizontally в false, я даже пробовал устаревшую singleLine = false, и это не работает.
Похоже, не хватает примеров, показывающих, как это сделать, и множество людей на SO задают один и тот же вопрос, ни на один из которых нет окончательного ответа.
Ответ №1:
Итак, ответ заключается в том, что RelativeLayout и многострочный TextView плохо сочетаются друг с другом, измените 2 внутренних элемента RelativeLayout на LinearLayout, и в TextView внезапно появится несколько строк.
Комментарии:
1. Возможно, в то время это было правдой, но просто обновление на текущий день, RelativeLayout действительно хорошо справляется с переносом содержимого вокруг многострочных текстовых представлений.
Ответ №2:
Попробуйте добавить android:width="0dip"
в th TextView
.
Комментарии:
1. Это делает текстовые представления невидимыми.
2. Это потому, что вместо android:width=»0dip» для TextView внутри linearlayuot. Убедитесь, что вы используете относительный макет, следовательно, невидимый