货币符号在textView中无法正确格式化?

时间:2015-05-15 10:22:46

标签: android fonts

在我的应用我有一条消息可由用户自定义,然后显示在应用中。

如果用户输入“£100”,则显示为“£100”?

我尝试使用包含此符号的字体,但它没有解决我的问题。

Typeface font = Typeface.createFromAsset(getActivity().getAssets(), "arial_unicode.ttf");

alertTextView.setTypeface(font);

alertTextView.setText(message);

我尝试使用* Arial Unicode MS,Verdana,Arial,Code2000 ......但问题仍然存在。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

使用\u00A3(lira)等代码或尝试更改字符串的编码,如下所示:

byte[] myByteArray = message.getBytes(Charsets.UTF_8);
String encodedMessage = new String(myByteArray, Charsets.UTF_8);
alertTextView.setText(encodedMessage);

答案 1 :(得分:0)

我解决了我的问题。

问题在于如何在我的消息变量中获取和格式化这些数据。

正如我在上面的评论中所述,我通过API从Json数据中获取此信息。在这一点上,我使用的字符转换器不正确我不得不从" iso-8859-1"到" utf-8"能够正确读取我的货币符号。