ListView に独自のフォントを設定する際に問題があります。独自の Adapter クラスの使用方法と必要な xml がわかりません (ListView を配置したもの以外に)。私は(ListViewで)独自のフォントでテキストを中央に配置することを望んでいます。それは私のアダプターです:
public class MyAdapter extends BaseAdapter {
private String[] objects; // no objects just String array
private final Context context;
public MyAdapter(Context context, String[] objects) {
this.context = context;
this.objects = objects;
}
@Override
public int getCount() {
return objects.length;
}
@Override
public Object getItem(int position) {
return objects[position];
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Object obj = objects[position];
TextView tv = new TextView(context);
tv.setText(obj.toString());
Typeface tf = Typeface.createFromAsset(getAssets(),"fonts/kolejRogFont.ttf");
tv.setTypeface(tf);
return tv;
}
}
Lista.javaで呼び出しています
ListView lv = new ListView(this);
lv.setAdapter(new MyAdapter(this, listview_array));
コードは、StackOverFlow に関する別のトピックからのものです。
オンラインでエラーが発生します (未定義のメソッド):
Typeface tf = Typeface.createFromAsset(getAssets(),"fonts/kolejRogFont.ttf");
2.画面に何も表示されない。ListView レイアウト用の XML を作成する必要がありますか? それは何を含むべきですか?