admin
2021-06-07 01e23be6118d68d38a71d186296d440eadcaa197
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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
package com.tejia.lijin.app.ui.goldtask;
 
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.graphics.Color;
import android.graphics.drawable.GradientDrawable;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.TextView;
 
import com.app.hubert.guide.util.ScreenUtils;
import com.wpc.library.util.SystemCommon;
import com.tejia.lijin.app.R;
import com.tejia.lijin.app.entity.DailySign;
import com.tejia.lijin.app.ui.dialog.CopyLinkDialog;
import com.tejia.lijin.app.ui.goldtask.view.ProgressBarTime;
 
public class SigninTodayDialog extends Dialog {
    public SigninTodayDialog(Context context) {
        super(context);
        this.setCancelable(false);
    }
 
    public SigninTodayDialog(Context context, int theme) {
        super(context, theme);
        this.setCancelable(false);
    }
 
    public static class Builder {
        private Context context;
        private DailySign mDailySign;
        private String positiveButtonText;
        private String negativeButtonText;
        private DialogInterface.OnClickListener positiveButtonClickListener;
        private DialogInterface.OnClickListener negativeButtonClickListener;
 
        public Builder(Context context) {
            this.context = context;
        }
 
        public SigninTodayDialog.Builder setMessage(DailySign mDailySign) {
            this.mDailySign = mDailySign;
            return this;
        }
 
        /**
         * Set the positive button resource and it's listener
         *
         * @param positiveButtonText
         * @return
         */
        public SigninTodayDialog.Builder setPositiveButton(int positiveButtonText,
                                                           DialogInterface.OnClickListener listener) {
            this.positiveButtonText = (String) context
                    .getText(positiveButtonText);
            this.positiveButtonClickListener = listener;
            return this;
        }
 
        public SigninTodayDialog.Builder setPositiveButton(String positiveButtonText,
                                                           DialogInterface.OnClickListener listener) {
            this.positiveButtonText = positiveButtonText;
            this.positiveButtonClickListener = listener;
            return this;
        }
 
        public SigninTodayDialog.Builder setNegativeButton(int negativeButtonText,
                                                           DialogInterface.OnClickListener listener) {
            this.negativeButtonText = (String) context
                    .getText(negativeButtonText);
            this.negativeButtonClickListener = listener;
            return this;
        }
 
        public SigninTodayDialog.Builder setNegativeButton(String negativeButtonText,
                                                           DialogInterface.OnClickListener listener) {
            this.negativeButtonText = negativeButtonText;
            this.negativeButtonClickListener = listener;
            return this;
        }
 
        public CopyLinkDialog create() {
            LayoutInflater inflater = (LayoutInflater) context
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            // instantiate the dialog with the custom Theme
            final CopyLinkDialog dialog = new CopyLinkDialog(context, R.style.Dialog1);
            View layout = inflater.inflate(R.layout.item_signintoday, null);
            dialog.addContentView(layout, new FrameLayout.LayoutParams(
                    FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.WRAP_CONTENT));
 
            TextView signintoday_gold = layout.findViewById(R.id.signintoday_gold);// 签到金币
            ProgressBarTime signintoday_bar = layout.findViewById(R.id.signintoday_bar);//签到进度
            TextView signintoday_close = layout.findViewById(R.id.signintoday_close);//关闭
            // 动态改变shape
            GradientDrawable shape = new GradientDrawable();
            shape.setCornerRadius(ScreenUtils.dp2px(context, 100));
            shape.setColor(Color.parseColor("#FF9E00"));
            //设置大小
            signintoday_close.setBackground(shape);
 
            signintoday_bar.setProgressBarTime(mDailySign);
            signintoday_gold.setText(" + " + mDailySign.goldCoin);
 
            if (positiveButtonClickListener != null) {
                signintoday_close.setOnClickListener(new View.OnClickListener() {
                    public void onClick(View v) {
                        positiveButtonClickListener.onClick(dialog, DialogInterface.BUTTON_POSITIVE);
                    }
                });
            }
            if (negativeButtonClickListener != null) {
//                popups_close.setVisibility(View.VISIBLE);//显示第二个按钮
                signintoday_close.setOnClickListener(new View.OnClickListener() {
                    public void onClick(View v) {
                        negativeButtonClickListener.onClick(dialog, DialogInterface.BUTTON_NEGATIVE);
                    }
                });
            }
            dialog.setContentView(layout);
 
            android.view.WindowManager.LayoutParams params = dialog.getWindow().getAttributes();
            params.width = (int) ((SystemCommon.getScreenWidth(context) * 19) / 25);
            params.height = android.view.WindowManager.LayoutParams.WRAP_CONTENT;
            dialog.getWindow().setAttributes(params);
            dialog.setCanceledOnTouchOutside(false);
            return dialog;
        }
    }
}