正如您在所附图片中看到的那样,Eclipse 正在资源文件中正确显示来自 XML 的Tifinagh文本。但是当我将此 XML 解析为 listView 时,它不会显示。我教它与 XML 解析有关,所以我基于 Hello world 教程创建了一个新项目并替换为“Hello world!” 使用 Tifinagh 字符(我从 XML 中复制的)并再次使用;他们不显示。
我在stackoverflow上检查了一个类似的问题,但还没有答案。
所以;
- Android 是否支持 Tifinagh?
- 如果没有,是否有任何解决方法可以解决此问题?
谢谢你的帮助。
更新
我设法通过使用以下方法在 hello world 界面中设置字体:
// Set the tifinagh font
Typeface tf = Typeface.createFromAsset(getAssets(), "t_ircam-webfont.ttf");
TextView tv = (TextView) MainActivity.this.findViewById(R.id.txt);
tv.setTypeface(tf);
但是如何为 ListView 设置它?
package com.theopentutorials.android.activities;
import java.io.IOException;
import java.util.List;
import android.app.Activity;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import com.theopentutorials.android.beans.PostObj;
import com.theopentutorials.android.xml.XMLPullParserHandler;
public class XMLPullParserActivity extends Activity {
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Prepare the list view to publish item to.
listView = (ListView) findViewById(R.id.list);
List<PostObj> posts = null;
try {
XMLPullParserHandler parser = new XMLPullParserHandler();
posts = parser.parse(getAssets().open("amawal_posts.xml"));
System.out.println("============================== ");
System.out.println("Posts fresh "+ posts);
System.out.println("============================== ");
ArrayAdapter<PostObj> adapter = new ArrayAdapter<PostObj>(this, R.layout.list_item, posts);
listView.setAdapter(adapter);
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.xmlpull_parser, menu);
return true;
}
}