부르는 부분
GridView gv;
gv = (GridView) myView.findViewById(R.id.list_profile);
profileAdapter = new ProfileAdapter(MypageProfile.this, R.id.list_profile, list);
gv.setAdapter(profileAdapter);
받는 부분
public Map<Integer, BoardData> dataMap = Collections.synchronizedMap(new HashMap<Integer, BoardData>());
HttpProxy proxy = new HttpProxy();
private String imagePath = proxy.getBaseUrl();
private boolean zero = false;
private int zeroCount = 0;
private Handler handler = new Handler();
ArrayList<BoardDTO> items;
Intent intent;
Activity activity;
public ProfileAdapter(Context context, int textViewResourceId, ArrayList<BoardDTO> items) {
super(context, textViewResourceId, items);
this.items = items;
activity = (Activity) context;
//data clear
dataMap.clear();
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
boolean duplicate = true;
View v = convertView;
final ViewHolder holder;
final BoardData boardData;
if (v == null) {
LayoutInflater vi = (LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.board_item, null);
}
if(dataMap.get(position) == null){
boardData = new BoardData();
zero = false;
}else{
boardData = dataMap.get(position);
zero = true;
}
holder = createViewHolder(v);
if(position!=0){
clear(holder);
if(dataMap.get(position) == null){
duplicate = true;
}else{
storeDataSetting(holder,boardData);
state(holder, boardData);
duplicate = false;
}
}else{
if(zeroCount>6){
if(zero){
Logger.debug("6");
clear(holder);
storeDataSetting(holder,boardData);
state(holder, boardData);
zero = false;
duplicate = false;
}
}else{
zeroCount++;
}
}
if(duplicate){
Logger.debug("8");
final BoardDTO p = getItem(position);
if (p != null) {
Logger.debug("9");
holder.eventLl.setTag(position+"");
holder.profileMv.setTag(position+"");
boardData.setArticlSeq(p.getArticlSeq());
holder.articlSeq.setText(boardData.getArticlSeq());
AsyncTaskHandler<Bitmap> profileTask = new AsyncTaskHandler<Bitmap>(handler) {
@Override
public void preTask() throws Throwable{
Bitmap bm = Utility.downloadImage(imagePath+p.getProfilePath()+SMALL_IMG);
setTaskResult(bm);
}