1.首先创建弹窗
private void showqiandao() {
        LayoutInflater inflater  = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
        View           popupView = inflater.inflate(R.layout.qiandao, null);
        float density    = getResources().getDisplayMetrics().density;
        int   widthInPx  = Math.round(500 * density);
        int   heightInPx = Math.round(350 * density);
        final PopupWindow popupWindow = new PopupWindow(popupView, widthInPx, heightInPx, true);
        popupWindow.setOutsideTouchable(true);
        popupWindow.setFocusable(true);
        View parentView = findViewById(android.R.id.content);
        popupWindow.showAtLocation(parentView, Gravity.CENTER, 0, 0);
        int currentDayOfWeek = getCurrentDayOfWeek();
        // 设置当天的"guang"视图的可见性
        setGuangVisibility(popupView, currentDayOfWeek);
        ImageView   zhezhao = popupView.findViewById(getResources().getIdentifier("zhezhao" + currentDayOfWeek, "id", getPackageName()));  //遮罩层
        ImageView   duigou  = popupView.findViewById(getResources().getIdentifier("duigou" + currentDayOfWeek, "id", getPackageName()));   //领取成功后的图片
        FrameLayout qiandao = popupView.findViewById(getResources().getIdentifier("qiandao" + currentDayOfWeek, "id", getPackageName()));  //奖品主体
        qiandao.setOnClickListener(v -> handleQiandao(currentDayOfWeek, zhezhao, duigou, popupWindow, popupView));
        loadQiandaoState(popupView);
        ImageView closeButton = popupView.findViewById(R.id.back);
        closeButton.setOnClickListener(v -> popupWindow.dismiss());
    }
2.判断当天是否已经签到
private void handleQiandao(int dayOfWeek, ImageView zhezhao, ImageView duigou, PopupWindow popupWindow, View popupView) {
        String savedDay = sharedPreferences.getString(PREF_SIGNED_DAY, "");
        if (savedDay.equals(String.valueOf(dayOfWeek))) {
            Toast.makeText(this, "今天已经签到过了!", Toast.LENGTH_SHORT).show();
        } else {
            SharedPreferences.Editor editor = sharedPreferences.edit();
            editor.putString(PREF_SIGNED_DAY, String.valueOf(dayOfWeek));
            editor.apply();
            zhezhao.setVisibility(View.VISIBLE);
            duigou.setVisibility(View.VISIBLE);
            int coins = (dayOfWeek == 7) ? 10000 : 500; // Sunday gets 10000 coins, otherwise 500 coins
            addCoinsDisplay(coins);
            popupWindow.dismiss();  //签到成功后关闭弹窗
            showGameCoinDialog(coins);   //显示领取动画
        }
    }
3.如果已经签到就显示遮罩层,没有签到就显示签到
private void loadQiandaoState(View popupView) {
        String savedDay         = sharedPreferences.getString(PREF_SIGNED_DAY, "");
        int    currentDayOfWeek = getCurrentDayOfWeek();
        for (int day = 1; day <= 7; day++) {
            int zhezhaoId = getResources().getIdentifier("zhezhao" + day, "id", getPackageName());
            int duigouId  = getResources().getIdentifier("duigou" + day, "id", getPackageName());
            int guangId   = getResources().getIdentifier("guang" + day, "id", getPackageName());
            ImageView zhezhao = popupView.findViewById(zhezhaoId);
            ImageView duigou  = popupView.findViewById(duigouId);
            ImageView guang   = popupView.findViewById(guangId);
            if (String.valueOf(day).equals(savedDay) && day == currentDayOfWeek) {
                zhezhao.setVisibility(View.VISIBLE);
                duigou.setVisibility(View.VISIBLE);
                guang.setVisibility(View.GONE);
            } else {
                zhezhao.setVisibility(View.GONE);
                duigou.setVisibility(View.GONE);
            }
        }
    }
4.根据实际日期判断该点击哪个
private void setGuangVisibility(View popupView, int dayOfWeek) {
        for (int i = 1; i <= 7; i++) {
            int  guangId = getResources().getIdentifier("guang" + i, "id", getPackageName());
            View guang   = popupView.findViewById(guangId);
            if (guang != null) {
                guang.setVisibility(i == dayOfWeek ? View.VISIBLE : View.GONE);
            }
        }
    }
5.获取当前日期
private int getCurrentDayOfWeek() {
        Calendar calendar  = Calendar.getInstance();
        int      dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
        if (dayOfWeek == Calendar.SUNDAY) {
            return 7;
        } else {
            return dayOfWeek - 1;
        }
    }
6.XML代码如下
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/main_lin"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/bg_pop_l2x"
    android:orientation="vertical"
    android:paddingLeft="10dp"
    android:paddingRight="10dp">
    <!--顶部按钮-->
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_marginTop="10dp"
        android:layout_weight="1">
        <FrameLayout
            android:id="@+id/four"
            android:layout_width="160dp"
            android:layout_height="40dp"
            android:layout_centerInParent="true"
            android:background="@drawable/dailybonus2x" />
        <ImageView
            android:id="@+id/back"
            android:layout_width="40dp"
            android:layout_height="40dp"
            android:layout_alignParentRight="true"
            android:background="@drawable/ic_xx2x" />
    </RelativeLayout>
    <!--中间排行榜-->
    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginBottom="15dp"
        android:layout_weight="6"
        android:background="@drawable/bg_qiandao_main"
        android:orientation="vertical"
        android:paddingLeft="10dp"
        android:paddingTop="15dp">
        <!--        上面三个-->
        <FrameLayout
            android:id="@+id/qiandao1"
            android:layout_width="100dp"
            android:layout_height="120dp"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent">
            <RelativeLayout
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:background="@drawable/bg_day12x">
                <ImageView
                    android:layout_width="20dp"
                    android:layout_height="20dp"
                    android:layout_alignTop="@+id/day1"
                    android:layout_toLeftOf="@+id/day1"
                    android:src="@drawable/ic_jiaojiao2x" />
                <TextView
                    android:id="@+id/day1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="5dp"
                    android:text="Day 1"
                    android:textColor="@color/white"
                    android:textStyle="bold" />
                <ImageView
                    android:id="@+id/icon_money"
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:layout_centerInParent="true"
                    android:background="@drawable/ic_coin_12x" />
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/icon_money"
                    android:layout_centerHorizontal="true"
                    android:text="500"
                    android:textColor="@color/money_color"
                    android:textSize="25sp"
                    android:textStyle="bold" />
            </RelativeLayout>
            <ImageView
                android:id="@+id/zhezhao1"
                android:layout_width="100dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:background="@drawable/zhezhao2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/duigou1"
                android:layout_width="80dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:scaleType="centerInside"
                android:src="@drawable/ic_duigou2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/guang1"
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:layout_gravity="center"
                android:background="@drawable/bk_huang2x"
                android:scaleType="centerInside"
                android:visibility="gone" />
        </FrameLayout>
        <FrameLayout
            android:id="@+id/qiandao2"
            android:layout_width="100dp"
            android:layout_height="120dp"
            android:layout_marginLeft="10dp"
            app:layout_constraintStart_toEndOf="@id/qiandao1"
            app:layout_constraintTop_toTopOf="@id/qiandao1">
            <RelativeLayout
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:background="@drawable/bg_day12x">
                <ImageView
                    android:layout_width="20dp"
                    android:layout_height="20dp"
                    android:layout_alignTop="@+id/day2"
                    android:layout_toLeftOf="@+id/day2"
                    android:src="@drawable/ic_jiaojiao2x" />
                <TextView
                    android:id="@+id/day2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="5dp"
                    android:text="Day 2"
                    android:textColor="@color/white"
                    android:textStyle="bold" />
                <ImageView
                    android:id="@+id/icon_money2"
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:layout_centerInParent="true"
                    android:background="@drawable/ic_coin_12x" />
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/icon_money2"
                    android:layout_centerHorizontal="true"
                    android:text="500"
                    android:textColor="@color/money_color"
                    android:textSize="25sp"
                    android:textStyle="bold" />
            </RelativeLayout>
            <ImageView
                android:id="@+id/zhezhao2"
                android:layout_width="100dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:background="@drawable/zhezhao2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/duigou2"
                android:layout_width="80dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:scaleType="centerInside"
                android:src="@drawable/ic_duigou2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/guang2"
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:layout_gravity="center"
                android:background="@drawable/bk_huang2x"
                android:scaleType="centerInside"
                android:visibility="gone" />
        </FrameLayout>
        <FrameLayout
            android:id="@+id/qiandao3"
            android:layout_width="100dp"
            android:layout_height="120dp"
            android:layout_marginLeft="10dp"
            app:layout_constraintStart_toEndOf="@id/qiandao2"
            app:layout_constraintTop_toTopOf="@id/qiandao1">
            <RelativeLayout
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:background="@drawable/bg_day12x">
                <ImageView
                    android:layout_width="20dp"
                    android:layout_height="20dp"
                    android:layout_alignTop="@+id/day3"
                    android:layout_toLeftOf="@+id/day3"
                    android:src="@drawable/ic_jiaojiao2x" />
                <TextView
                    android:id="@+id/day3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="5dp"
                    android:text="Day 3"
                    android:textColor="@color/white"
                    android:textStyle="bold" />
                <ImageView
                    android:id="@+id/icon_money3"
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:layout_centerInParent="true"
                    android:background="@drawable/ic_coin_12x" />
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/icon_money3"
                    android:layout_centerHorizontal="true"
                    android:text="500"
                    android:textColor="@color/money_color"
                    android:textSize="25sp"
                    android:textStyle="bold" />
            </RelativeLayout>
            <ImageView
                android:id="@+id/zhezhao3"
                android:layout_width="100dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:background="@drawable/zhezhao2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/duigou3"
                android:layout_width="80dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:scaleType="centerInside"
                android:src="@drawable/ic_duigou2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/guang3"
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:layout_gravity="center"
                android:background="@drawable/bk_huang2x"
                android:scaleType="centerInside"
                android:visibility="gone" />
        </FrameLayout>
        <!--        下面三个-->
        <FrameLayout
            android:id="@+id/qiandao4"
            android:layout_width="100dp"
            android:layout_height="120dp"
            android:layout_marginTop="10dp"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@id/qiandao1">
            <RelativeLayout
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:background="@drawable/bg_day12x">
                <ImageView
                    android:layout_width="20dp"
                    android:layout_height="20dp"
                    android:layout_alignTop="@+id/day4"
                    android:layout_toLeftOf="@+id/day4"
                    android:src="@drawable/ic_jiaojiao2x" />
                <TextView
                    android:id="@+id/day4"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="5dp"
                    android:text="Day 4"
                    android:textColor="@color/white"
                    android:textStyle="bold" />
                <ImageView
                    android:id="@+id/icon_money4"
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:layout_centerInParent="true"
                    android:background="@drawable/ic_coin_22x" />
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/icon_money4"
                    android:layout_centerHorizontal="true"
                    android:text="500"
                    android:textColor="@color/money_color"
                    android:textSize="25sp"
                    android:textStyle="bold" />
            </RelativeLayout>
            <ImageView
                android:id="@+id/zhezhao4"
                android:layout_width="100dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:background="@drawable/zhezhao2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/duigou4"
                android:layout_width="80dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:scaleType="centerInside"
                android:src="@drawable/ic_duigou2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/guang4"
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:layout_gravity="center"
                android:background="@drawable/bk_huang2x"
                android:scaleType="centerInside"
                android:visibility="gone" />
        </FrameLayout>
        <FrameLayout
            android:id="@+id/qiandao5"
            android:layout_width="100dp"
            android:layout_height="120dp"
            android:layout_marginLeft="10dp"
            app:layout_constraintStart_toEndOf="@id/qiandao4"
            app:layout_constraintTop_toBottomOf="@id/qiandao2"
            app:layout_constraintTop_toTopOf="@+id/qiandao4">
            <RelativeLayout
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:background="@drawable/bg_day12x">
                <ImageView
                    android:layout_width="20dp"
                    android:layout_height="20dp"
                    android:layout_alignTop="@+id/day5"
                    android:layout_toLeftOf="@+id/day5"
                    android:src="@drawable/ic_jiaojiao2x" />
                <TextView
                    android:id="@+id/day5"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="5dp"
                    android:text="Day 5"
                    android:textColor="@color/white"
                    android:textStyle="bold" />
                <ImageView
                    android:id="@+id/icon_money5"
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:layout_centerInParent="true"
                    android:background="@drawable/ic_coin_22x" />
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/icon_money5"
                    android:layout_centerHorizontal="true"
                    android:text="500"
                    android:textColor="@color/money_color"
                    android:textSize="25sp"
                    android:textStyle="bold" />
            </RelativeLayout>
            <ImageView
                android:id="@+id/zhezhao5"
                android:layout_width="100dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:background="@drawable/zhezhao2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/duigou5"
                android:layout_width="80dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:scaleType="centerInside"
                android:src="@drawable/ic_duigou2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/guang5"
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:layout_gravity="center"
                android:background="@drawable/bk_huang2x"
                android:scaleType="centerInside"
                android:visibility="gone" />
        </FrameLayout>
        <FrameLayout
            android:id="@+id/qiandao6"
            android:layout_width="100dp"
            android:layout_height="120dp"
            android:layout_marginLeft="10dp"
            app:layout_constraintStart_toEndOf="@id/qiandao5"
            app:layout_constraintTop_toTopOf="@id/qiandao4">
            <RelativeLayout
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:background="@drawable/bg_day12x">
                <ImageView
                    android:layout_width="20dp"
                    android:layout_height="20dp"
                    android:layout_alignTop="@+id/day6"
                    android:layout_toLeftOf="@+id/day6"
                    android:src="@drawable/ic_jiaojiao2x" />
                <TextView
                    android:id="@+id/day6"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="5dp"
                    android:text="Day 6"
                    android:textColor="@color/white"
                    android:textStyle="bold" />
                <ImageView
                    android:id="@+id/icon_money6"
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:layout_centerInParent="true"
                    android:background="@drawable/ic_coin_22x" />
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/icon_money6"
                    android:layout_centerHorizontal="true"
                    android:text="500"
                    android:textColor="@color/money_color"
                    android:textSize="25sp"
                    android:textStyle="bold" />
            </RelativeLayout>
            <ImageView
                android:id="@+id/zhezhao6"
                android:layout_width="100dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:background="@drawable/zhezhao2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/duigou6"
                android:layout_width="80dp"
                android:layout_height="115dp"
                android:layout_gravity="center"
                android:scaleType="centerInside"
                android:src="@drawable/ic_duigou2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/guang6"
                android:layout_width="100dp"
                android:layout_height="120dp"
                android:layout_gravity="center"
                android:background="@drawable/bk_huang2x"
                android:scaleType="centerInside"
                android:visibility="gone" />
        </FrameLayout>
        <!--        第七天-->
        <FrameLayout
            android:id="@+id/qiandao7"
            android:layout_width="100dp"
            android:layout_height="250dp"
            android:layout_marginLeft="10dp"
            app:layout_constraintStart_toEndOf="@id/qiandao3"
            app:layout_constraintTop_toTopOf="parent">
            <RelativeLayout
                android:layout_width="100dp"
                android:layout_height="250dp"
                android:background="@drawable/bg_day72x">
                <ImageView
                    android:layout_width="20dp"
                    android:layout_height="20dp"
                    android:layout_alignTop="@+id/day7"
                    android:layout_toLeftOf="@+id/day7"
                    android:src="@drawable/ic_jiaojiao2x" />
                <TextView
                    android:id="@+id/day7"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="5dp"
                    android:text="Day 7"
                    android:textColor="@color/white"
                    android:textStyle="bold" />
                <ImageView
                    android:id="@+id/icon_money7"
                    android:layout_width="80dp"
                    android:layout_height="80dp"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="50dp"
                    android:background="@drawable/ic_coin_32x" />
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/icon_money7"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="10dp"
                    android:text="10,000"
                    android:textColor="@color/money_color"
                    android:textSize="25sp"
                    android:textStyle="bold" />
            </RelativeLayout>
            <ImageView
                android:id="@+id/zhezhao7"
                android:layout_width="100dp"
                android:layout_height="246dp"
                android:layout_gravity="center"
                android:background="@drawable/zhezhao2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/duigou7"
                android:layout_width="80dp"
                android:layout_height="245dp"
                android:layout_gravity="center"
                android:scaleType="centerInside"
                android:src="@drawable/ic_duigou2x"
                android:visibility="gone" />
            <ImageView
                android:id="@+id/guang7"
                android:layout_width="100dp"
                android:layout_height="250dp"
                android:layout_gravity="center"
                android:background="@drawable/bk_huang2x"
                android:scaleType="centerInside"
                android:visibility="gone" />
        </FrameLayout>
    </androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>