适配器侧拉

package com.example.a1112.adapter;

import android.content.Context;
import android.graphics.Bitmap;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.example.a1112.R;

import java.util.ArrayList;
import java.util.List;

public class LeftAdapter extends BaseAdapter {
private Context mcontext;
//private String[] menus=new String[]{“首页”,“视频”,“我的”};
private List mDatas;
private Bitmap bitmap;
public LeftAdapter(Context context) {
this.mcontext = context;
mDatas=new ArrayList<>();

}

public void setmDatas(List<String> datas) {
    mDatas.clear();
    if (datas!=null){
        mDatas.addAll(datas);
    }
    notifyDataSetChanged();
}


public void setBitmap(Bitmap icon) {
    this.bitmap = icon;
    notifyDataSetChanged();
}

private final int TYPE_COUN=2;
private final int TYPE_IMAGE=0;
private final int TYPE_TEXT=1;
@Override
public int getItemViewType(int position) {
    return position==0?TYPE_IMAGE:TYPE_TEXT;
}

@Override
public int getViewTypeCount() {
    return TYPE_COUN;
}

@Override
public int getCount() {
    return mDatas.size()+1;
}

@Override
public String getItem(int position) {
    return mDatas.get(position-1);
}

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

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder holder;
    if (convertView==null){
        convertView=LayoutInflater.from(mcontext).inflate(getItemViewType(position)==TYPE_IMAGE?R.layout.item_image:R.layout.item_text,parent,false);
        holder=new ViewHolder(convertView);
    }else {
        holder= (ViewHolder) convertView.getTag();
    }
    if (getItemViewType(position)==TYPE_IMAGE){
        //绑定image
        if (bitmap!=null){
        holder.bindIcon(bitmap);
        }
    }else {
        holder.bindData(getItem(position));
    }
    return convertView;
}
class ViewHolder{
    ImageView imageView;
    TextView textView;
    public ViewHolder(View view){
        imageView=view.findViewById(R.id.image_t);
        textView=view.findViewById(R.id.text_t);
        view.setTag(this);
    }
    public void bindData(String title){
        textView.setText(title);
    }
    public void bindIcon(Bitmap bitmap){
        imageView.setImageBitmap(bitmap);
    }
}

}

猜你喜欢

转载自blog.csdn.net/yin422706867/article/details/84205129