package com.cardiar.doctor_app.view.adapter;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.bumptech.glide.Glide;
import com.cardiar.doctor_app.R;
import com.cardiar.doctor_app.modle.bean.Bean_Me.Bean_center;
import com.cardiar.doctor_app.view.activity.Activity_Me;
import com.cardiar.doctor_app.view.activity.Activity_attention;
import java.util.ArrayList;
import butterknife.ButterKnife;
import butterknife.InjectView;
/**
* 我的关注--------Adapter-------
* Created by 马占柱 on 2017/6/7.
*/
public class Center_re_adapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> implements View.OnClickListener {
private int[] icons;
private ArrayList<Activity> list;
private Context context;
private Bean_center.DataBean bean;
private String[] str;
//item类型
public static final int ITEM_TYPE_HEADER = 0;
public static final int ITEM_TYPE_CONTENT = 1;
public static final int ITEM_TYPE_BOTTOM = 2;
private int mHeaderCount = 1;//头部View个数
// private int mBottomCount = 1;//底部View个数
private View headView;//头布局
private View view_item;//item布局
public Center_re_adapter(Context context, Bean_center bean, String[] str, ArrayList<Activity> lists, int[] icons) {
this.context = context;
this.bean = bean.getData();
this.str = str;
this.list = lists;
this.icons = icons;
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
headView = LayoutInflater.from(context).inflate(R.layout.fragment_center_head, parent, false);
view_item = LayoutInflater.from(context).inflate(R.layout.fragment_center_item, parent, false);
if (viewType == ITEM_TYPE_HEADER) {
return new Head_Holder(headView);
} else if (viewType == ITEM_TYPE_CONTENT) {
return new NormalViewhodler(view_item);
} else if (viewType == ITEM_TYPE_BOTTOM) {
}
return null;
}
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {
if (holder instanceof Head_Holder) {
Head_Holder head = (Head_Holder) holder;
//头布局
Glide.with(context).load(bean.getImg_url()).into(head.centerMesImag);
head.centerMesImag.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
head.centerMesName.setText(bean.getDoctorname());
head.centerMesHos.setText(bean.getDoc_hospital());
head.centerMesPress.setText(bean.getDoc_professor());
head.centerFans.setText(bean.getAtt_usenum());
head.centerFocus.setText(bean.getAtt_docnum());
head.center_message.setOnClickListener(this);
head.center_fensi.setOnClickListener(this);
head.center_guanzhu.setOnClickListener(this);
} else {
final int num = position - mHeaderCount;//因为有头布局,所以需要减去头的数量
NormalViewhodler hd = (NormalViewhodler) holder;
hd.centerItemText.setText(str[num]);
hd.centerItemImag.setImageResource(icons[num]);
//显示有消息小圆圈
if (str[num].equals("我收到的消息")) {
if (bean.getXx().equals("1")) {
hd.center_jiantou.setVisibility(View.INVISIBLE);
hd.me_imag2.setVisibility(View.INVISIBLE);
hd.meImag1.setVisibility(View.VISIBLE);
} else {
hd.me_imag2.setVisibility(View.INVISIBLE);
hd.meImag1.setVisibility(View.INVISIBLE);
hd.center_jiantou.setVisibility(View.VISIBLE);
}
} else {
if (str[num].equals("咨询")) {
if (bean.getHzxx().equals("0")){
hd.me_imag2.setVisibility(View.INVISIBLE);
hd.meImag1.setVisibility(View.INVISIBLE);
hd.center_jiantou.setVisibility(View.VISIBLE);
}else {
hd.center_jiantou.setVisibility(View.INVISIBLE);
hd.meImag1.setVisibility(View.INVISIBLE);
hd.me_imag2.setVisibility(View.VISIBLE);
hd.me_imag2.setText(bean.getHzxx());
}
}else {
hd.me_imag2.setVisibility(View.INVISIBLE);
hd.meImag1.setVisibility(View.INVISIBLE);
hd.center_jiantou.setVisibility(View.VISIBLE);
}
}
hd.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Activity activity = list.get(num);
context.startActivity(new Intent(context, activity.getClass()));
}
});
}
}
@Override
public int getItemCount() {
return mHeaderCount + getContentItemCount();
}
//判断当前item类型
@Override
public int getItemViewType(int position) {
if (mHeaderCount != 0 && position < mHeaderCount) {
//头部View
return ITEM_TYPE_HEADER;
} else {
//内容View
return ITEM_TYPE_CONTENT;
}
}
//内容长度
public int getContentItemCount() {
return str.length;
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.center_message:
//医生信息
context.startActivity(new Intent(context, Activity_Me.class));
break;
case R.id.center_fensi:
//我的粉丝
// context.startActivity(new Intent(context, Activity_attention.class));
break;
case R.id.center_guanzhu:
//我的关注
context.startActivity(new Intent(context, Activity_attention.class));
break;
}
}
class Head_Holder extends RecyclerView.ViewHolder {
@InjectView(R.id.center_mes_name)
TextView centerMesName;
@InjectView(R.id.center_mes_hos)
TextView centerMesHos;
@InjectView(R.id.center_mes_press)
TextView centerMesPress;
@InjectView(R.id.center_focus)
TextView centerFocus;
@InjectView(R.id.center_fans)
TextView centerFans;
@InjectView(R.id.center_mes_imag)
ImageView centerMesImag;
@InjectView(R.id.center_message)
RelativeLayout center_message;
@InjectView(R.id.center_guanzhu)
RelativeLayout center_guanzhu;
@InjectView(R.id.center_fensi)
RelativeLayout center_fensi;
Head_Holder(View view) {
super(view);
ButterKnife.inject(this, view);
}
}
class NormalViewhodler extends RecyclerView.ViewHolder {
@InjectView(R.id.center_item_text)
TextView centerItemText;
@InjectView(R.id.center_item)
RelativeLayout centerItem;
@InjectView(R.id.center_item_imag)
ImageView centerItemImag;
@InjectView(R.id.me_imag1)
TextView meImag1;//消息小圆圈
@InjectView(R.id.center_jiantou)
ImageView center_jiantou;
@InjectView(R.id.me_imag2)
TextView me_imag2;
NormalViewhodler(View view) {
super(view);
ButterKnife.inject(this, view);
}
}
}
recyclerView多条目布局
最新推荐文章于 2022-11-25 19:03:37 发布