ListViewのフォントサイズを動的に変更するにはどうすればよいですか?
1761 次
1 に答える
1
カスタムListAdapterを使用し、getViewをオーバーライドし、アダプターの初期化中にパラメーター(textSize)を設定します...
public class MyListAdapter extends ArrayAdapter<String> {
private String[] stringArray = null;
private int textSize,itemLayout;
public MyListAdapter(Context context,
String[] objects,int textSize) {
super(context, R.layout.la_item, objects);
stringArray = objects;
itemLayout = R.layout.la_item;
this.textSize = textSize;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if(convertView == null)
{
LayoutInflater vi = (LayoutInflater)ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = vi.inflate(itemLayout, null);
}
TextView tv = (TextView)convertView.findViewById(R.id.itemText);
tv.setTextSize(textSize); // SET THE TEXT SIZE!
tv.setText(stringArray[position]);
return convertView;
}
}
R.layout.la_itemは、TextView...を使用した単純なlinearlayoutです。
ListAdapterの使用方法についてはこちらをご覧ください...
于 2010-07-12T12:47:41.550 に答える