에이치의 모바일 앱 개발
CustomAdapter-ViewHolder 본문
/**
* Created by lsh on 2016-08-17.
* version 1.0.1
*/
public class CustomAdapter extends BaseAdapter {
private Context context;
private int resourceId;
private ArrayList<DBColumn> arrayList;
private LayoutInflater inflater;
private class ViewHolder {
LinearLayout layout;
TextView bssid;
TextView latitude;
TextView longitude;
TextView ssid;
TextView level;
}
private void findView(View convertView, ViewHolder viewHolder) {
viewHolder.layout = (LinearLayout) convertView.findViewById(R.id.layout_wifi_listparent);
viewHolder.bssid = (TextView) convertView.findViewById(R.id.txt_bssid);
viewHolder.latitude = (TextView) convertView.findViewById(R.id.txt_latitude);
viewHolder.longitude = (TextView) convertView.findViewById(R.id.txt_longitude);
viewHolder.ssid = (TextView) convertView.findViewById(R.id.txt_ssid);
viewHolder.level = (TextView) convertView.findViewById(R.id.txt_level);
}
private void listItem(int position, ViewHolder viewHolder) {
viewHolder.bssid.setText(arrayList.get(position).getBssid());
viewHolder.latitude.setText(String.valueOf(arrayList.get(position).getLatitude()));
viewHolder.longitude.setText(String.valueOf(arrayList.get(position).getLongitude()));
viewHolder.ssid.setText(arrayList.get(position).getSsid());
viewHolder.level.setText(String.valueOf(arrayList.get(position).getLevel()));
}
/**
* @param context : 컨텍스트
* @param resourceId : 보여줄 레이아웃
* @param arrayList : 보여줄 데이터를 갖고있는 배열
*/
public CustomAdapter(Context context, int resourceId, ArrayList<DBColumn> arrayList) {
this.context = context;
this.resourceId = resourceId;
this.arrayList = arrayList;
}
@Override
public int getCount() {
return arrayList.size();
}
@Override
public Object getItem(int position) {
return arrayList.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder;
if (convertView == null) {
inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(resourceId, parent, false);
viewHolder = new ViewHolder();
findView(convertView, viewHolder);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
listItem(position ,viewHolder);
return convertView;
}
}
'Android > Android 개발 소스' 카테고리의 다른 글
WebViewClient & WebChormeClient (0) | 2017.12.23 |
---|---|
PreferenceActivity SettingActivity using version 1.0.1(미) (0) | 2017.12.23 |
ListView Hegiht Setting version 1.0.1 (0) | 2017.12.23 |
keypad setting version 1.0.1 (0) | 2017.12.23 |
TextView> UI Postion Setting version 1.0.1 (0) | 2017.12.23 |
Comments