分享

新手啊请求帮助,在自定义适配器里面设置数据的时候都是报错,读不到listDate数据

 昵称37014169 2016-10-03
package com.example.baseadapter;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class MainActivity extends Activity {
private ListView listView=null;
private List<Map<String, Object>> listdata = null;

// private final static String TAG="MyAdapter";
private int[] icon = {R.drawable.jinniu, R.drawable.juxie, R.drawable.tiancheng, R.drawable.tianxie, R.drawable.chunv,
R.drawable.baiyang, R.drawable.funv, R.drawable.numa, R.drawable.shuangyu, R.drawable.shizi, R.drawable.sheshou, R.drawable.shuangyu1};
private String[] title = {"金牛座", "巨蟹座", "天秤座", "天蝎座", "双子座", "白羊座", "处女座", "摩羯座", "水瓶座", "狮子座", "射手座", "双鱼座"};
private String[] descrip = {"jiuniuzuo", "juxiezuo", "tianchengzuo", "tianxiezuo", "shuangzizuo", "baiyangzuo", "chunvzuo", "mojiezuo", "shuipingzuo", "shizizuo", "sheshouzuo", "shuangyuzuo"};

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

listView = (ListView) findViewById(R.id.list_view);

// data = new ArrayList<Map<String,Object>>();
listdata = getDate();
MyAdapter adapter = new MyAdapter(this);
listView.setAdapter(adapter);
}

public List<Map<String, Object>> getDate() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map;
for (int i = 0; i < 12; i++) {
map = new HashMap<String, Object>();
map.put("icon", icon[i]);
map.put("title", title[i]);
map.put("descrip", descrip[i]);
list.add(map);
}
return list;
}

public class MyAdapter extends BaseAdapter {
LayoutInflater inflater = null;

// private Context mContext;
public MyAdapter(Context context) {
// this.mContext = context;
this.inflater = LayoutInflater.from(context);
}

@Override
public int getCount() {
return listdata.size();
}

@Override
public Object getItem(int position) {
return listdata.get(position);
}

@Override
public long getItemId(int position) {
return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
if (convertView == null) {
convertView = inflater.inflate(R.layout.items, null);
holder = new ViewHolder();
holder.icon = (ImageView) findViewById(R.id.iv_img);
holder.title = (TextView) findViewById(R.id.tv_title);
holder.descrip = (TextView) findViewById(R.id.tv_descrip);
holder.button = (Button) findViewById(R.id.button);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}

holder.icon.setBackgroundResource((Integer) listdata.get(position).get("icon"));
holder.title.setText(listdata.get(position).get("title").toString());
holder.descrip.setText((String) listdata.get(position).get("descrip"));


return convertView;
}
}

final class ViewHolder {
public ImageView icon;
public TextView title;
public TextView descrip;
public Button button;
}
}


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多