我在我的布局中添加了EditText
,并添加了一个提示,并使其水平居中。
运行应用程序时,提示不可见。我发现我应该将ellipsize
的{{1}}值设为TextView
:
start
在Android文档中,我读到了:
如果设置,则导致比视图宽的单词为
椭圆化而不是在中间破碎。
问题是在字典中找不到<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" />
。任何人都可以向我解释ellipsize
属性可以带来哪些好处? ellipsize
,start
,end
之间有什么区别?
答案 0 :(得分:345)
您可以找到文档here。
根据您的要求,您可以尝试选择。
到 ellipsize ,一种新词,意思是使用ellipsis缩短文字,即三个点...
或更常见的结扎…
,以代替省略的位。
说原始值pf文本视图是 aaabbbccc 并且它在视图中的拟合
start
的输出将是: ... bccc
end
的输出将是: aaab ...
middle
的输出将是: aa ... cc
marquee
的输出将是: aaabbbccc 自动从右向左滑动
答案 1 :(得分:53)
根据我的经验,省略号只有在设置了以下两个属性时才有效。
android:ellipsize="end"
android:singleLine="true"
对于textview的宽度,wrap_content或match_parent应该都是好的。
答案 2 :(得分:16)
<强> How to Add an ellipsis in a TextView
强>
android:ellipsize在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
答案 3 :(得分:9)
ellipsis连续三个时段......
当TextView无法展开以显示其所有文本时,它将使用省略号。如果必要,属性ellipsized
设置三个点的位置。
答案 4 :(得分: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
的{{1}}属性,则会看到这样的
start
This is my first android application and
...t seems android is really very easy to play.
属性
end
答案 5 :(得分:1)
注意:您的文字必须大于以下选框的容器框:
android:ellipsize="marquee"
答案 6 :(得分:0)
将此属性设置为edittext。 Ellipsize正在使用禁用编辑文本
android:lines="1"
android:scrollHorizontally="true"
android:ellipsize="end"
android:singleLine="true"
android:editable="false"
或setKeyListener(null);
答案 7 :(得分:0)
下面是一个示例,说明如何在ConstraintLayout中不使用已弃用的android:singleLine="true"
的情况下 ellipsize 的工作方式:
<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。
答案 8 :(得分:0)
当宽度固定时使用ellipsize,它将自动截断文本并在末尾显示省略号
如果将layout_width设置为wrap_content和match_parent,将无法正常工作。
android:width="40dp"
android:ellipsize="end"
android:singleLine="true"