
android平台中,在listview中,怎么根据传进来的数据不同,在列表中显示不同的文本信息呢
2个回答
展开全部
动态设置他的adapter
这是我写的Adapter 可以借给你参考一下
public class ListNewsAdpater extends BaseAdapter {
private LayoutInflater mInflater;
private JSONDATA da;
private List<Map<String, Object>> mData;
public ListNewsAdpater(Activity context,List<Map<String, Object>> news)
{
this.mInflater = LayoutInflater.from(context);
this.mData=news;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mData.size();
}
@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup arg2) {
// TODO Auto-generated method stub
ViewHolder holder = null;
if (convertView == null) {
holder=new ViewHolder();
convertView = mInflater.inflate(R.layout.items2, null);
convertView.setTag(holder);
}else {
holder = (ViewHolder)convertView.getTag();
}
holder.title = (TextView)convertView.findViewById(R.id.idt_title);
holder.date=(TextView)convertView.findViewById(R.id.idt_date);
holder.img=(ImageView)convertView.findViewById(R.id.news2_img);
holder.img2=(ImageView)convertView.findViewById(R.id.news22_img2);
da=(JSONDATA) mData.get(position).get("data");
holder.title.setText(da.getTitle());
holder.title.setTextSize(20f);
holder.title.setTypeface(null,Typeface.BOLD);
holder.date.setText(da.getDate());
holder.date.setTextSize(20f);
if(da.getDate().equals(DateUtil.formatDate(new Date()))){
holder.img.setBackgroundResource(R.drawable.newimg2);
}
else{
holder.img.setVisibility(View.GONE);
}
if(da.getRead()==0)
{
holder.title.setTextColor(Color.parseColor("#FF9900"));
holder.date.setTextColor(Color.parseColor("#FF9900"));
}
if(da.getrecommand()==1){
holder.img2.setBackgroundResource(R.drawable.huo);
}else if(da.getrecommand()==0)
{
holder.img2.setVisibility(View.GONE);
}else if(da.getrecommand()==2){
holder.img2.setBackgroundResource(R.drawable.jian);
}
return convertView;
}
public final class ViewHolder{
public TextView title;
public TextView date;
public ImageView img;
public ImageView img2;
}
}
这是我写的Adapter 可以借给你参考一下
public class ListNewsAdpater extends BaseAdapter {
private LayoutInflater mInflater;
private JSONDATA da;
private List<Map<String, Object>> mData;
public ListNewsAdpater(Activity context,List<Map<String, Object>> news)
{
this.mInflater = LayoutInflater.from(context);
this.mData=news;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mData.size();
}
@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup arg2) {
// TODO Auto-generated method stub
ViewHolder holder = null;
if (convertView == null) {
holder=new ViewHolder();
convertView = mInflater.inflate(R.layout.items2, null);
convertView.setTag(holder);
}else {
holder = (ViewHolder)convertView.getTag();
}
holder.title = (TextView)convertView.findViewById(R.id.idt_title);
holder.date=(TextView)convertView.findViewById(R.id.idt_date);
holder.img=(ImageView)convertView.findViewById(R.id.news2_img);
holder.img2=(ImageView)convertView.findViewById(R.id.news22_img2);
da=(JSONDATA) mData.get(position).get("data");
holder.title.setText(da.getTitle());
holder.title.setTextSize(20f);
holder.title.setTypeface(null,Typeface.BOLD);
holder.date.setText(da.getDate());
holder.date.setTextSize(20f);
if(da.getDate().equals(DateUtil.formatDate(new Date()))){
holder.img.setBackgroundResource(R.drawable.newimg2);
}
else{
holder.img.setVisibility(View.GONE);
}
if(da.getRead()==0)
{
holder.title.setTextColor(Color.parseColor("#FF9900"));
holder.date.setTextColor(Color.parseColor("#FF9900"));
}
if(da.getrecommand()==1){
holder.img2.setBackgroundResource(R.drawable.huo);
}else if(da.getrecommand()==0)
{
holder.img2.setVisibility(View.GONE);
}else if(da.getrecommand()==2){
holder.img2.setBackgroundResource(R.drawable.jian);
}
return convertView;
}
public final class ViewHolder{
public TextView title;
public TextView date;
public ImageView img;
public ImageView img2;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询