全部。我是android开发的新手。现在我正在使用TextView。视情况而定,我设置了不同的文字。但有时文字非常大。例如,我插入这个“abcdefgh_myword”,我在我的小TextView中得到类似“abcdefg”的东西,但我想得到这个“..._ myword”。所以我想计算我看到的(编程)字母的数量,并设置我希望看到的文字。这该怎么做?有什么想法吗?
...
android:ellipsize =“start”不能正常工作...请注意当我收缩宽度时发生的事情我的TextView
前
后
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:ellipsize="start"
android:gravity="center"
android:maxLines="1"
android:text="abcdef1234567" />
有什么想法吗?
答案 0 :(得分:1)
这可以帮到你
android:ellipsize="start"
android:maxLines="1"
将其添加到XML文件中的TextView
修改强>
据此:https://aviationweather.gov/adds/dataserver
您必须使用android:singleLine="true"
,因为end
只支持marquee
和maxLines
答案 1 :(得分:0)
只有当您知道每个符号的宽度时,才可能这样做。您通常不会这样做,因为字体取决于系统。
您可以使用等宽字体。
答案 2 :(得分:0)
您可能正在寻找Java的字符串length()
方法。检查this回答。然后根据需要使用XML中的android:ellipsize="start"
或setEllipsize(TruncateAt.START);
。
答案 3 :(得分:0)
除了lidkxx的回答,您还可以在文本视图中调用getText()
来获取字符串。
TextView textview = (TextView) findViewById(R.id.your_text_view);
String s = textview.getText();
int letterCount = s.length();