2011-10-30 5 views
1

こんにちはリストビューの項目にカスタム書体を使用する場合は少し助けが必要です。資産は次のようにフォルダから私は自分の書体を取得しています:Androidはリストビューの項目にカスタムの書体を使用します

Typeface font = Typeface.createFromAsset(getAssets(), "hermesbgbold.otf"); 

をそして私は私のリストビューアイテムのためにそれを設定しようとしているが、問題は、私は私のListViewのためSimpleAdapterを使用していますとのTextViewのであるということです別のXMLで、リストビューのcontentViewとして使用しています。ここでは、より良い理解のためのコードは次のとおりです。だから、

public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.events); 
// code 

SimpleAdapter adapter = new SimpleAdapter(this, items, R.layout.events_items, 
       new String[]{ICON,TITLE, INFO}, new int[]{ R.id.thumb,R.id.title, R.id.dates}) 

} 

、私はカスタムの書体で使用するのTextViewのはevents_items.xmlです。だから、titledatesにこのカスタム書体を使用するにはどうすればいいですか?

+1

カスタムアダプター –

答えて

1

独自のカスタムアダプタを作成し、テキストのフォントを設定します。

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    // ViewHolder will buffer the assess to the individual fields of the row 
    // layout 

    ViewHolder holder; 
    // Recycle existing view if passed as parameter 
    // This will save memory and time on Android 
    // This only works if the base layout for all classes are the same 
    View rowView = convertView; 
    if (rowView == null) { 

     LayoutInflater inflater = context.getLayoutInflater(); 
     rowView = inflater.inflate(R.layout.main_listview, null, true); 

     holder = new ViewHolder(); 
     holder.textView = (TextView) rowView.findViewById(R.id.main_name); 
     rowView.setTag(holder); 

    } else { 
     holder = (ViewHolder) rowView.getTag(); 
    } 

    Typeface font = Typeface.createFromAsset(getAssets(), "hermesbgbold.otf"); 
    holder.textView.setTypeface(font); 
    holder.textView.setText(title); 

    return rowView; 
} 
関連する問題