ListView中的自定义字体项

时间:2013-11-17 19:12:10

标签: android listview fonts

我想在项目列表视图中使用自定义字体。

代码:

public View getView(int position, View convertView, ViewGroup parent) {

    LayoutInflater inflater = getLayoutInflater(getArguments());
    View v = inflater.inflate(R.layout.item, parent, false);
    TextView tvitem = (TextView) v.findViewById(R.id.tvitem);
    Typeface tf = Typeface.createFromAsset(context.getAssets(),
                    "fonts/name.ttf");
    tvitem.setTypeface(tf);
    ImageView imgitem = (ImageView) v.findViewById(R.id.imgitem);
    tvitem.setText(name[position]);
    imgitem.setImageResource(img[position]);

    return v;
}

例外:

11-18 02:04:31.501: E/AndroidRuntime(18221): FATAL EXCEPTION: main
11-18 02:04:31.501: E/AndroidRuntime(18221): java.lang.NullPointerException
11-18 02:04:31.501: E/AndroidRuntime(18221):    at com.example.tuvi.MainActivity$GridViewAdapter.getView(MainActivity.java:83)

我该怎么办????

2 个答案:

答案 0 :(得分:0)

创建单个项目(模板)的XML文件,并在Listview

中为该xml项目充气

答案 1 :(得分:0)

  83中的

行是代码:Typeface tf = Typeface.createFromAsset(context.getAssets(),“fonts / name.ttf”);

然后contextnull

摆脱context.,只使用getAssets(),因为你在Activity内(否则,getLayoutInflater()无效)。