RechargeGridView.java 2.91 KB
Newer Older
ydl committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
package com.yidianling.user.mine;

import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.widget.LinearLayout;

import com.ydl.ydlcommon.view.RoundCornerButton;
import com.yidianling.user.R;

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


/**
 * Created by Emma on 2016/8/5.
 */
public class RechargeGridView extends LinearLayout {
    List<RoundCornerButton> mList = new ArrayList<>();


//    @BindView(R.id.rcb_01)
    RoundCornerButton rcb_01;
//    @BindView(R.id.rcb_02)
    RoundCornerButton rcb_02;
//    @BindView(R.id.rcb_03)
    RoundCornerButton rcb_03;
//    @BindView(R.id.rcb_04)
    RoundCornerButton rcb_04;
//    @BindView(R.id.rcb_05)
    RoundCornerButton rcb_05;
//    @BindView(R.id.rcb_06)
    RoundCornerButton rcb_06;

    private ItemClickListener itemClickListener;

    private void initView() {
        rcb_01 = findViewById(R.id.rcb_01);
        rcb_02 = findViewById(R.id.rcb_02);
        rcb_03 = findViewById(R.id.rcb_03);
        rcb_04 = findViewById(R.id.rcb_04);
        rcb_05 = findViewById(R.id.rcb_05);
        rcb_06 = findViewById(R.id.rcb_06);
    }

    public RechargeGridView(Context context) {
        super(context);
        inflate(context, R.layout.user_mine_ui_recharge_gv, this);
        initView();
        init();
    }

    public RechargeGridView(Context context, AttributeSet attrs) {
        super(context, attrs);
        inflate(context, R.layout.user_mine_ui_recharge_gv, this);
        initView();
        init();
    }

    public RechargeGridView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        inflate(context, R.layout.user_mine_ui_recharge_gv, this);
        initView();
        init();
    }

    void init() {
        mList.clear();
        mList.add(rcb_01);
        mList.add(rcb_02);
        mList.add(rcb_03);
        mList.add(rcb_04);
        mList.add(rcb_05);
        mList.add(rcb_06);
        for (int i = 0; i < mList.size(); i++) {
            mList.get(i).setStroke(0, 0x00000000);
        }
        setListener();
    }

    public void setFirstBg(int c) {
        rcb_01.setBg(c);
    }


    public void setListener() {
        for (int i = 0; i < mList.size(); i++) {
            final int finalI = i;
            mList.get(i).setOnClickListener(view -> {
                if (itemClickListener != null)
                    itemClickListener.clickItem(view, finalI);
            });
        }
    }

    public void setItemClickListener(ItemClickListener itemClickListener) {
        this.itemClickListener = itemClickListener;
    }

    public interface ItemClickListener {
        void clickItem(View view, int position);
    }

    public void setTexts(List<String> names) {
        for (int i = 0; i < mList.size(); i++) {
            mList.get(i).setText(names.get(i));
        }
    }

    public List<RoundCornerButton> getChildList() {
        return mList;
    }

}