android开发list是否存在,Android开发札记(13)——ListFragment

该博客介绍了一个Android ListFragment的实现,用于展示历史比赛列表。通过创建自定义的CompetitionListAdapter,博客详细展示了如何从HashMap中获取比赛日期、得分和球员信息,并将这些数据显示在ListView的每个列表项上。点击列表项时,可以获取到具体的比赛详情。
摘要由CSDN通过智能技术生成

public class HistoryListFragment extendsListFragment {privateCompetitionListAdapter adapter;private List>competitionlist;//构造函数

publicHistoryListFragment(){}

@Overridepublic voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);

competitionlist= new ArrayList>();

adapter= newCompetitionListAdapter(getActivity());//绑定适配器时,必须通过ListFragment.setListAdapter()接口,而不是ListView.setAdapter()或其它方法

this.setListAdapter(adapter);

}//创建窗口

@OverridepublicView onCreateView(LayoutInflater inflater, ViewGroup container,

Bundle savedInstanceState) {return inflater.inflate(R.layout.history_list, container, false);

}//设置点击事件

@Overridepublic void onListItemClick(ListView l, View v, int position, longid) {super.onListItemClick(l, v, position, id);

HashMap item =(HashMap) adapter.getItem(position);

String scoreA= (String)item.get("scoreA");

String scoreB= (String)item.get("scoreB");

String log= (String)item.get("log");

}//自定义 CompetitionListAdapter 继承于BaseAdapter

public class CompetitionListAdapter extendsBaseAdapter {private LayoutInflater mInflater=null;publicCompetitionListAdapter(Context context){this.mInflater=LayoutInflater.from(context);

}

@Overridepublic intgetCount(){returncompetitionlist.size();

}

@Overridepublic Object getItem(intposition){returncompetitionlist.get(position);

}

@Overridepublic long getItemId(intposition){returnposition;

}

@Overridepublic View getView(intposition, View convertView, ViewGroup parent){

ViewHolder holder= null;if (convertView ==null){

holder= newViewHolder();

convertView= mInflater.inflate(R.layout.history_list_competition,null);

holder.date=(TextView)convertView.findViewById(R.id.list_competition_date);

holder.scoreA=(TextView)convertView.findViewById(R.id.list_competition_scoreA);

holder.scoreB=(TextView) convertView.findViewById(R.id.list_competition_scoreB);

holder.player=(TextView)convertView.findViewById(R.id.list_competition_player);

convertView.setTag(holder);

}else{

holder=(ViewHolder)convertView.getTag();

}

holder.date.setText((String)competitionlist.get(position).get("date"));

holder.scoreA.setText((String)competitionlist.get(position).get("scoreA"));

holder.scoreB.setText((String)competitionlist.get(position).get("scoreB"));

holder.player.setText((String)competitionlist.get(position).get("player"));returnconvertView;

}private classViewHolder{publicTextView date;publicTextView player;publicTextView scoreB;publicTextView scoreA;

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值