Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.itla.teacher;
- import java.util.ArrayList;
- import android.content.Context;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.BaseAdapter;
- import android.widget.ImageView;
- import android.widget.TextView;
- public class MyBaseAdapter extends BaseAdapter {
- ArrayList<ListData> myList = new ArrayList<ListData>();
- LayoutInflater inflater;
- Context context;
- public MyBaseAdapter(Context context, ArrayList<ListData> myList) {
- this.myList = myList;
- this.context = context;
- inflater = LayoutInflater.from(this.context); // only context can also be used
- }
- @Override
- public int getCount() {
- return myList.size();
- }
- @Override
- public ListData getItem(int position) {
- return myList.get(position);
- }
- @Override
- public long getItemId(int position) {
- return 0;
- }
- @Override
- public View getView(int position, View convertView, ViewGroup parent) {
- MyViewHolder mViewHolder;
- if(convertView == null) {
- convertView = inflater.inflate(R.layout.layout_list_item, null);
- mViewHolder = new MyViewHolder();
- convertView.setTag(mViewHolder);
- } else {
- mViewHolder = (MyViewHolder) convertView.getTag();
- }
- mViewHolder.setTvTitle(detail(convertView, R.id.tvTitle, myList.get(position).getTitle()));
- mViewHolder.setTvDesc(detail(convertView, R.id.tvDesc, myList.get(position).getDescription()));
- mViewHolder.setIvIcon(detail(convertView, R.id.ivIcon, myList.get(position).getImgResId()));
- return convertView;
- }
- // or you can try better way
- private TextView detail(View v, int resId, String text) {
- TextView tv = (TextView) v.findViewById(resId);
- tv.setText(text);
- return tv;
- }
- private ImageView detail(View v, int resId, int icon) {
- ImageView iv = (ImageView) v.findViewById(resId);
- iv.setImageResource(icon); //
- return iv;
- }
- private class MyViewHolder {
- private TextView tvTitle;
- private TextView tvDesc;
- private ImageView ivIcon;
- public TextView getTvTitle() {
- return tvTitle;
- }
- public void setTvTitle(TextView tvTitle) {
- this.tvTitle = tvTitle;
- }
- public TextView getTvDesc() {
- return tvDesc;
- }
- public void setTvDesc(TextView tvDesc) {
- this.tvDesc = tvDesc;
- }
- public ImageView getIvIcon() {
- return ivIcon;
- }
- public void setIvIcon(ImageView ivIcon) {
- this.ivIcon = ivIcon;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement