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);
}
}
}