大神 帮看看我快疯了,弄了一天都没搞定
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.homepage_list); ListView listView = (ListView) findViewById(R.id.tab_homepage_list);
ArrayList<MicroBlogHP> listBlog = new ArrayList<MicroBlogHP>();
for (int i = 0; i < 50; i++) {
MicroBlogHP blog = new MicroBlogHP();
blog.setContent("content" + i);
blog.setUserName("name" + i);
listBlog.add(blog);
} System.out.println("listBog size is " + listBlog.size());
MyAdapter adapter = new MyAdapter(Test3.this, listBlog);
listView.setAdapter(adapter);
} private class MyAdapter extends BaseAdapter {
private ArrayList<MicroBlogHP> mData;
private LayoutInflater inflater; private Context context; public MyAdapter(Context context, ArrayList<MicroBlogHP> list) {
this.mData = list;
this.context = context;
// inflater = (LayoutInflater)
// getSystemService(Context.LAYOUT_INFLATER_SERVICE);
inflater = LayoutInflater.from(context);
} @Override
public int getCount() {
// TODO Auto-generated method stub
return mData.size();
} @Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return mData.get(position);
} @Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
} @Override
public View getView(int position, View convertView, ViewGroup parent) {
System.out.println("position-->" + position + ",convertView===>"
+ convertView);
String content = mData.get(position).getContent();
String name = mData.get(position).getUserName(); ViewHolder holder = null;
if (convertView == null) {
convertView = inflater.inflate(R.layout.homepage_item, null);
holder = new ViewHolder();
holder.tvContent = (TextView) convertView
.findViewById(R.id.hp_microBlogContent);
holder.tvName = (TextView) convertView
.findViewById(R.id.hp_username);
convertView.setTag(holder); } else {
holder = (ViewHolder) convertView.getTag();
} holder.tvContent.setText(content);
holder.tvName.setText(name);
return convertView;
}
} private static class ViewHolder {
private TextView tvContent, tvName;
}
为什么结果会打印三遍啊???
listview