【发布时间】:2012-07-03 01:30:48
【问题描述】:
应用程序在列表视图中滚动几秒钟后崩溃。
String[] names = new String[] {"Cook","2/Person/15/5","Cashier","2/Person/15/5"};
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
View rowView = convertView;
LayoutInflater inflater =(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
String[] info = names.get(position).split("/");
if (rowView == null) {
if (info.length != 1) {
rowView = inflater.inflate(R.layout.employee, null, true);
holder = new ViewHolder();
holder.name = (TextView) rowView.findViewById(R.id.name);
holder.money= (TextView) rowView.findViewById(R.id.money);
holder.rating = (RatingBar) rowView.findViewById(R.id.rating);
rowView.setTag(holder);
}else{
rowView = inflater.inflate(R.layout.lable, null, true);
holder = new ViewHolder();
holder.lable = (TextView) rowView.findViewById(R.id.name);
rowView.setTag(holder);
}
}
holder = (ViewHolder) rowView.getTag();
if (holder.lable==null) {
holder.name.setText(info[1]);
holder.money.setText(info[2]);
holder.rating.setRating(Float.valueOf("1"));
}else{
holder.lable.setText(names.get(position));
}
//}
return rowView;
}
【问题讨论】:
-
使用 Logcat 查看确切的错误信息:
adb logcat或 Eclipse 中的 DDMS 透视图 -
它说 nullPointerexeption @ holder.lable.setText(names.get(position));