Многострочный текстовый просмотр, но перенос второй строки

#android #textview #android-linearlayout #android-custom-view #multiline

#Android #текстовый просмотр #android-linearlayout #android-пользовательский вид #многострочный

Вопрос:

У меня есть проблема с выбором мозга, которую я пытаюсь решить для смарт-упаковки для TextView в Android. У меня есть LinearLayout (горизонтальный), который состоит из textView1, textView2 и ImageView. textView1 может содержать длинный текст или короткий текст. Для короткого текста все выглядит довольно аккуратно и так, как ожидалось. Вот так —

введите описание изображения здесь

Теперь проблема возникает, когда текст в textView1 становится длиннее. Поскольку максимальные строки для textView1 равны 2, это выглядит примерно так

введите описание изображения здесь

Это не идеальный опыт, потому что во многих случаях во второй строке остается много текста с пробелами.

Мой идеальный опыт, который я хочу, — это что-то вроде этого —

введите описание изображения здесь

Есть идеи о том, как я могу добиться такого поведения? Я еще не написал никакого кода, потому что я даже не уверен, как это сделать. Любая помощь и указатели будут высоко оценены. Надеюсь получить ответы от всех вас, экспертов.

Редактировать 1: добавление скриншота на основе предложения Гэвина Flexbox введите описание изображения здесь

Комментарии:

1. Могу ли я увидеть код в формате .xml?

Ответ №1:

Звучит как идеальный вариант для FlexboxLayout . Он действует как LinearLayout , но затем завершается, когда попадает в конец строки.

Комментарии:

1. Спасибо за предложение, Гэвин. Я попробовал это, хотя все еще не то, что я хочу. Прикрепленный скриншот выше в качестве редактирования1

2. Я вижу. Возможно, вы можете просто поставить многоточие TextView , если для этого требуется более одной строки? Потому что Views в Android должны быть прямоугольными, поэтому выполнение именно того, что вы хотите, означало бы измерение доступного пространства и каким-то образом разбивание одного TextView на несколько TextViews .

3. Да, это то, о чем я думал. Может быть, мне придется взломать его таким образом. :/

4. Или, возможно, один пользовательский View было бы проще.

5. Хммм, мне придется провести мозговой штурм, как я это создам. Просто пользовательский вид.