AccountChildsAdapter.java 6.87 KB
package com.hjx.personalcenter.adapter;

import android.content.Context;
import android.support.v4.app.FragmentActivity;
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.LinearLayout;
import android.widget.TextView;

import com.facebook.drawee.view.SimpleDraweeView;
import com.hjx.personalcenter.R;
import com.hjx.personalcenter.db.Content;
import com.hjx.personalcenter.db.SaveParam;
import com.hjx.personalcenter.http.HttpManager;
import com.hjx.personalcenter.model.ChildsInfo;
import com.hjx.personalcenter.util.GetDevicesUtil;
import com.mylhyl.circledialog.CircleDialog;

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

/**
 * Created by h on 2017/8/26.
 */

public class AccountChildsAdapter extends RecyclerView.Adapter<AccountChildsAdapter.AccountChildsHolder> implements View.OnClickListener {
    private List<ChildsInfo.DataBean> specailList;
    private LayoutInflater mInflater;
    private Context mContext ;

    public AccountChildsAdapter(ArrayList<ChildsInfo.DataBean> specailList,Context context) {
        this.mContext = context;
        this.specailList = specailList;
        mInflater = LayoutInflater.from(context);
    }

    public OnItemClickListener mOnItemClickListener;

    @Override
    public void onClick(View v) {
        if (mOnItemClickListener ==null){
            mOnItemClickListener.onItemClick(v, (int) v.getTag());
        }

    }

    public interface OnItemClickListener {
        void onItemClick(View view, int position);
    }

    public void setOnItemClickListener(OnItemClickListener mOnItemClickLitener) {
        this.mOnItemClickListener = mOnItemClickLitener;
    }

    public void setList(List<ChildsInfo.DataBean> list) {
        this.specailList = list;
        notifyDataSetChanged();
    }

    @Override
    public AccountChildsHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = mInflater.inflate(R.layout.recycler_childaccunt_item_view, parent, false);
        view.setOnClickListener(this);
        AccountChildsHolder holder = new AccountChildsHolder(view);
        return holder;
    }

    @Override
    public void onBindViewHolder(AccountChildsHolder holder, int position) {
        final ChildsInfo.DataBean bean = specailList.get(position);
        if (bean != null) {
            holder.mSimpleDraweeView.setImageURI(bean.getImage());
            holder.iv_child_name.setText(bean.getName());
            holder.iv_child_grade.setText(bean.getGrade());
            holder.iv_child_school.setText(bean.getSchool());
            holder.iv_child_adress.setText(bean.getRegion());
            if ("已使用".equals(bean.getStatus())){
                holder.chang_account.setText("使用中");
                holder.chang_account.setEnabled(false);
                holder.delete_account.setEnabled(false);
                holder.iv_using_pic.setVisibility(View.VISIBLE);
                holder.ll_backgrangd.setBackgroundResource(R.drawable.corcle_blue_bg);
            }else {
                holder.chang_account.setText("切换用户");
                holder.chang_account.setEnabled(true);
                holder.delete_account.setEnabled(true);
                holder.iv_using_pic.setVisibility(View.GONE);
                holder.ll_backgrangd.setBackgroundResource(R.drawable.corcle_black_bg);
            }
            holder.delete_account.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    new CircleDialog.Builder((FragmentActivity)mContext)
                            .setCanceledOnTouchOutside(false)
                            .setWidth(0.4f)
                            .setCancelable(false)
                            .setText("您确定删除该子账户?")
                            .setNegative("取消", null)
                            .setPositive("确定", new View.OnClickListener() {
                                @Override
                                public void onClick(View v) {
                                    HttpManager.getInstance().deletechildAccountinfo(mContext,bean.getSubAccountId());
                                }
                            })
                            .show();



                }
            });
            holder.chang_account.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    new CircleDialog.Builder((FragmentActivity)mContext)
                            .setCanceledOnTouchOutside(false)
                            .setWidth(0.4f)
                            .setCancelable(false)
                            .setText("您确定切换为该子账户?")
                            .setNegative("取消", null)
                            .setPositive("确定", new View.OnClickListener() {
                                @Override
                                public void onClick(View v) {
                                    Content.changgeaccountflag =2;
                                    SaveParam.getInstance().saveCustomizeParam(mContext,SaveParam.ACCOUNT,"2");
                                    String devicenumber = GetDevicesUtil.getDevicesInfo(mContext).getDeviceNumber();
                                    HttpManager.getInstance().changechildAccountinfo(mContext,bean.getSubAccountId(),bean.getParentId(),
                                            devicenumber,2);
                                }
                            })
                            .show();

                }
            });

        }


    }

    @Override
    public int getItemCount() {

        return specailList.size();
    }

    class AccountChildsHolder extends RecyclerView.ViewHolder {
        ImageView iv_using_pic;
        LinearLayout ll_backgrangd;
        SimpleDraweeView mSimpleDraweeView;
        TextView iv_child_name, iv_child_grade, iv_child_school, iv_child_adress,
                delete_account,chang_account;
        public AccountChildsHolder(View itemView) {
            super(itemView);
            mSimpleDraweeView = (SimpleDraweeView) itemView.findViewById(R.id.iv_child_head);
            iv_child_name = (TextView) itemView.findViewById(R.id.iv_child_name);
            iv_child_grade = (TextView) itemView.findViewById(R.id.iv_child_grade);
            iv_child_school = (TextView) itemView.findViewById(R.id.iv_child_school);
            iv_child_adress = (TextView) itemView.findViewById(R.id.iv_child_adress);
            delete_account = (TextView) itemView.findViewById(R.id.delete_child_account);
            chang_account = (TextView) itemView.findViewById(R.id.chang_account);
            iv_using_pic = (ImageView) itemView.findViewById(R.id.iv_using_pic);
            ll_backgrangd = (LinearLayout) itemView.findViewById(R.id.ll_backgrangd);

        }
    }
}