如何去掉椭圆号结尾的问号



我已经定义了以下TextView:

    <TextView
    android:id="@+id/textview_id"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="left"
    android:layout_alignParentTop="true"
    android:layout_marginRight="25dip"
    android:ellipsize="end"/>

和预期的一样,如果文本太长,就会被截断并用"…"代替。但是在这三个点的末尾出现了一个被正方形包围的问号。

如何去掉这个问号?

谢谢!

引用我自己的一本书:

Android的TextView类具有"椭圆化"文本的内置功能,如果文本比可用文本长,则截断它并添加省略号空间。例如,您可以通过android:ellipsize属性使用它。至少对于单行文本来说,这工作得相当好。

Android使用的省略号不是三个句号。而是用实际的省略号字符,其中三个点包含在一个字形中。因此,您使用的任何字体,您也使用"省略号"特性将需要省略号符号

除此之外,Android会填充在-上呈现的字符串屏幕,使长度(以字符为单位)前后相同"ellipsizing"。为了实现这个功能,Android将其中一个字符替换为省略,并用Unicode替换所有其他被删除的字符字符'零宽度不间断空格' (U+FEFF)。这意味着省略号后面的"额外"字符不会占用任何可见的空间屏幕,但它们可以是字符串的一部分。

然而,这意味着您为TextView小部件使用的任何自定义字体都可以与android:ellipsize一起使用的Unicode也必须支持这种特殊的Unicode的性格。并不是所有字体都这样,你会在屏幕上看到伪影如果您的字体缺少此字符,则表示您的缩短字符串(例如,流氓X出现在行尾)。

有同样的问题。有FontForge知识的人在我的自定义字体中固定了U+FEFF,现在它们工作得很好。以下是他对他所做的描述:

"我不擅长Fontforge,所以我作弊了。基本上,在Fontforge中打开字体,选择空格字符,ctrl+c复制,然后选择FEFF, ctrl+v粘贴。然后菜单度量->设置宽度并设置为零。然后文件->生成字体。"

相关内容

  • 没有找到相关文章

最新更新