Что означает эллипсис в андроиде?
Я добавил EditText
в мой макет и добавил подсказку и сделал его по центру горизонтально.
При запуске приложения подсказка была невидимой. Я обнаружил, что значение ellipsize
для TextView
должно быть start
:
<EditText
android:id="@+id/number1EditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="start"
android:ems="10"
android:gravity="center_horizontal"
android:hint="@string/hint1" />
В документации на Android я читал:
Если установлено, вызывает слова, которые длиннее, чем вид широко, чтобы быть эллипсированный, а не разбитый посередине.
Проблема заключается в том, что ellipsize
не найден в словаре. Может ли кто-нибудь объяснить мне, какие выгоды мы можем получить с помощью атрибута ellipsize
? И в чем разница между start
, end
, middle
?
Ответы
Ответ 1
Вы можете найти документацию здесь.
В соответствии с вашим требованием вы можете попробовать вариант.
to эллипсис, неологизм, означает сокращение текста с помощью ellipsis, т.е. трех точек ...
или чаще ligature …
, чтобы стоять за опущенные биты.
Скажем, исходное значение pf text view aaabbbccc и его соответствие внутри представления
start
вывод будет: ... bccc
end
вывод будет: aaab...
middle
вывод будет: aa... cc
marquee
вывод будет: aaabbbccc автоматическое перемещение справа налево
Ответ 2
для моего опыта, Ellipsis работает только в том случае, если установлены два атрибута.
android:ellipsize="end"
android:singleLine="true"
для ширины textview, wrap_content или match_parent оба должны быть хорошими.
Ответ 3
How to Add an ellipsis in a TextView
android: эллипсизация добавлена в API уровня 1. Эллипсис состоит из трех периодов подряд. (...).
В вашем Xml
<TextView
....
android:text="Hi I am Amiyo,you can see how to ellipse works."
android:ellipsize = "end"
/>
В этот момент эллипс пока не будет отображаться, так как TextView будет автоматически расширяться по умолчанию при вводе нового текста. Вам нужно будет ограничить TextView каким-то образом. Сделайте это, вы можете использовать либо добавить в свой TextView a scrollHorizontally, minLines, or maxLines
для отображения эллипсиса.
Чтобы сделать эллипс:
at the end: this is how it would...
use: android:ellipsize = "end"
И
in the middle: this is ...how it would
use: android:ellipsize = "middle"
и
at the start: ...this is how it would
use: android:ellipsize = "start"
И
to have no ellipse
use: android:ellipsize = "none"
Примечание. Пожалуйста,
Do not use android:singeLine = "true", it is deprecated.
android:maxLines = "1" will not display the three dots (...)
android:lines = "1" will not display the three dots (...)
Более подробную информацию вы можете найти здесь
http://developer.android.com/reference/android/widget/TextView.html#attr_android%3aellipsize
Ответ 4
ellipsis - это три периода подряд...
TextView будет использовать многоточие, если он не может расширяться, чтобы показать весь текст. Атрибут ellipsized
устанавливает положение трех точек, если это необходимо.
Ответ 5
Текст
This is my first android application and
I am trying to make a funny game,
It seems android is really very easy to play.
Предположим, что выше ваш текст, и если вы используете атрибут ellipsize
start
, он будет выглядеть следующим образом
This is my first android application and
...t seems android is really very easy to play.
с атрибутом end
This is my first android application and
I am trying to make a funny game,...
Ответ 6
Примечание. Ваш текст должен быть больше, чем поле контейнера, для следующего:
android:ellipsize="marquee"
Ответ 7
Установите это свойство для редактирования текста. Elipsize работает с отключенным текстом редактирования
android:lines="1"
android:scrollHorizontally="true"
android:ellipsize="end"
android:singleLine="true"
android:editable="false"
или setKeyListener (null);
Ответ 8
Вот пример того, как работает ellipsize без использования устаревшего android:singleLine="true"
в ConstraintLayout:
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:textSize="13sp"
android:ellipsize="end"
android:maxLines="2"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:text="long long long long long long text text text" />
помните, если у вас есть текст, который должен быть в одной строке, то измените maxLines на 1.