我有一个Android应用,我需要输出一些不是ASCII的字符。我设置这些字符的Java文件编码为UTF-8:
public void onItemCheckedStateChanged(ActionMode mode, int position,
long id, boolean checked) {
mode.setSubtitle(llista.getCheckedItemCount() + " elements sel·leccionats.");
}
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
mode.setTitle("Sel·lecciona!");
MenuInflater inflater = mode.getMenuInflater();
if (inflater != null) {
inflater.inflate(R.menu.menudetallllista, menu);
}
return true;
}
但我得到的输出是:
除了将文件编码更改为Windows-1252之外,还有什么办法可以解决这个问题吗?
答案 0 :(得分:1)
一个解决方法是unicode逃避Java源代码中的字符:
((TextView) findViewById(R.id.textView1)).setText("Some chars: \u00BF \u00EC \u00E1 \u00E9 \u00ED \u00F3 \u00FA \u00FC \u00F1");
或字符串XML文件:
<string name="test">Again: \u00BF \u00EC \u00E1 \u00E9 \u00ED \u00F3 \u00FA \u00FC \u00F1</string>