Intereting Posts
AsyncTask.executeOnExecutor () до уровня API 11 Можно ли отправлять команды HDMI CEC с устройства Android. Просмотр прокрутки Overlap с помощью AppBarLayout Любимый контент отображается неправильно в веб-просмотре Android – эмулятор в ландшафтном режиме, экран не вращается Просмотр личных файлов, созданных приложением android Использование? Android: attr / в приложениях с обратной совместимостью Вставка или обновление Android SQLite Устройство отключается в случайном порядке (и появляется несколько раз в автономном режиме) в Eclipse – исправления? ACCESS_FINE_LOCATION Разрешения AndroidManifest не предоставляются Android – как получить трансляцию намерений ACTION_SCREEN_ON / OFF? Существует ли ограничение на то, сколько разных приложений может опубликовать один разработчик на Android Market? Как создать пользовательский интерфейс, как новый рынок или Google plus? Внедрение вкладок ActionBar с API-интерфейсов v4 Есть ли способ отключить / отредактировать затухание, которое имеет вид списка по краям?

Многострочный TextView в Android?

Мне понравилось ниже в xml

 <TableRow> <TextView android:id="@+id/address1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="left" android:maxLines="4" android:singleLine="false" android:text="Johar Mor, Gulistan-e-Johar, Karachi" > </TextView> </TableRow> 

Он не работает для multiline , и я использую TableLayout

Так что я ошибаюсь здесь?

Solutions Collecting From Web of "Многострочный TextView в Android?"

Если текст, который вы помещаете в TextView , короток, он не будет автоматически расширяться до четырех строк. Если вы хотите, чтобы TextView всегда имел четыре строки независимо от длины текста в нем, установите атрибут android:lines :

 <TextView android:id="@+id/address1" android:gravity="left" android:layout_height="fill_parent" android:layout_width="wrap_content" android:maxLines="4" android:lines="4" android:text="Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."></TextView> 

Я попытался прокомментировать один из ответов выше, но у меня недостаточно репутации.
Я просто подумал, что добавлю, что если вы используете:

android:inputType="textMultiLine"

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

android:singleLine="false" работал нормально.

Мне не нравится ни один из ответов. Просто установите inputType, и TextView будет адаптироваться к его контенту

 <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:inputType="textMultiLine"/> 

Протестировано на Nexus One (2.3) и Nexus 4 (4.4)

Просто добавьте textview в ScrollView

 <ScrollView android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:layout_marginLeft="15dp" android:layout_marginRight="15dp" android:layout_marginTop="20dp" android:fillViewport="true"> <TextView android:id="@+id/txtquestion" android:layout_width="fill_parent" android:layout_height="match_parent" android:background="@drawable/abs__dialog_full_holo_light" android:lines="20" android:scrollHorizontally="false" android:scrollbars="vertical" android:textSize="15sp" /> </ScrollView> 

Просто поместите '\ n' внутри вашего текста … никакого дополнительного атрибута не требуется 🙂

  <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:text="Pigeon\nControl\nServices" android:id="@+id/textView5" android:layout_gravity="center" android:paddingLeft="12dp"/> 

Мне не нравится решение, которое заставляет количество строк в текстовом представлении. Я скорее предлагаю вам решить его с помощью предлагаемого здесь решения. Поскольку я вижу, что OP также борется с тем, чтобы текстовое представление выглядело как правильно в таблице, а shrinkColumns – правильная директива, чтобы пройти, чтобы достичь желаемого.

Я узнал, что нужно добавить «\ n» между словами, в которых вы хотите, чтобы он затормозил в следующей строке. Например…

 <TextView android:id="@+id/time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAlignment="center" android:text="MF 9am-5pm \n By Appointment Only" /> 

\ N между 5pm и By позволило мне больше контролировать, где я хочу, чтобы моя следующая строка начиналась и заканчивалась.

Я использовал:

 TableLayout tablelayout = (TableLayout) view.findViewById(R.id.table); tablelayout.setColumnShrinkable(1,true); 

Это сработало для меня. 1 – номер столбца.

Попытайтесь работать с EditText, сделав его незаметным и нецелесообразным, также вы можете отобразить полосу прокрутки и удалить панель инструментов EditText.
Вот пример:

 <EditText android:id="@+id/my_edit_text" android:layout_width="match_parent" android:layout_height="wrap_parent" android:inputType="textMultiLine" <==> multiline android:clickable="false" <==> unclickable android:focusable="false" <==> unfocusable android:scrollbars="vertical" <==> enable scrolling vertically android:background="@android:color/transparent" <==> hide the underbar of EditText /> 

Надеюсь это поможет 🙂

Лучший ответ, который я нашел для многострочного TextView:

 android:inputType="textMultiLine" 

Почему бы вам не объявить строку вместо написания длинных строк в файле макета. Для этого вам нужно объявить строку кода в файл макета «android: text =» @ string / text »и перейти в \\ app \ src \ main \ res \ values ​​\ strings.xml и добавить строку кода «Ваш многострочный текст здесь». Также используйте «\ n», чтобы разбить строку из любой точки, иначе линия будет автоматически отрегулирована.

TextView будет многострочной, если не будет достаточно места для размещения в одной строке, а singLine не будет установлен в true.

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