リストビューにフォントを設定できません。書体はテキストビューでのみ機能します。カスタムフォントを簡単に設定する方法はありますか? ありがとうございました。
質問する
497 次
1 に答える
-1
リストビュー用のアダプターを作成し、そこで TextView にフォントタイプを設定できます。
これはアダプターのクリップです (C# ですが、Java とそれほど違いはありません)。
class ParcelRecordContactAdapter : ArrayAdapter<ParcelRecordContact>
{
List<ParcelRecordContact> contacts;
public ParcelRecordContactAdapter(Context context, int textViewResourceId, List<ParcelRecordContact> contacts)
: base(context, textViewResourceId, contacts)
{
this.contacts = contacts;
}
public override View GetView(int position, View convertView, ViewGroup parent)
{
View v = convertView;
if (v == null)
{
LayoutInflater li = (LayoutInflater)this.Context.GetSystemService(Context.LayoutInflaterService);
v = li.Inflate(Resource.Layout.ListItem_SingleLine, null);
}
ParcelRecordContact contact = contacts[position];
if (contact != null)
{
/**********************************************************
* change font on tv here
**********************************************************/
TextView tv = (TextView)v.FindViewById(Resource.Id.tv_single_line_list_item_1);
if (tv != null)
{
tv.Text = "android is fu.... n"
Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/DroidSansFallback.ttf");
tv.setTypeface(tf);
}
}
return v;
}
}
于 2012-12-24T15:58:11.747 に答える