数独游戏app制作拆解(之六)——全部代码

android studio版本:23.3.1.patch 2

例程名称:shudu666

愿意研究的看下代码,不愿研究,只想玩玩的见文章尾部链接,可直接下载安装到手机玩玩。

图还是那个图:

上全部代码:

(屎山代码,大神勿喷。)

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <TextView
        android:id="@+id/textView"

        android:layout_width="359dp"
        android:layout_height="355dp"
        android:layout_marginStart="4dp"
        android:background="#CDE3ED"
        android:text=""
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="@+id/view4" />

    <TextView
        android:id="@+id/textView11"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="12dp"
        android:layout_marginTop="124dp"
        android:background="#FFff3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"

        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView12"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginStart="4dp"
        android:background="#FFff3B"
        android:gravity="center"

        android:textAlignment="center"
        android:textSize="25sp"

        app:autoSizeTextType="none"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView11"
        app:layout_constraintTop_toTopOf="@+id/textView11"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView13"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginStart="4dp"
        android:background="#FFFF3B"

        android:gravity="center"
        android:textAlignment="center"

        android:textSize="25sp"
        app:autoSizeTextType="none"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView12"
        app:layout_constraintTop_toTopOf="@+id/textView12"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView14"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"

        android:textAlignment="center"
        android:textSize="25sp"

        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView13"
        app:layout_constraintTop_toTopOf="@+id/textView13"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView15"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"

        android:textAlignment="center"
        android:textSize="25sp"

        app:autoSizeTextType="none"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView14"
        app:layout_constraintTop_toTopOf="@+id/textView14"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView16"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"

        android:textAlignment="center"
        android:textSize="25sp"

        app:autoSizeTextType="none"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView15"
        app:layout_constraintTop_toTopOf="@+id/textView15"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView17"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"

        android:textAlignment="center"
        android:textSize="25sp"

        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView16"
        app:layout_constraintTop_toTopOf="@+id/textView16"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView18"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"

        android:textAlignment="center"
        android:textSize="25sp"

        app:autoSizeTextType="none"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView17"
        app:layout_constraintTop_toTopOf="@+id/textView17"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView19"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"

        android:textAlignment="center"
        android:textSize="25sp"

        app:autoSizeTextType="none"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView18"
        app:layout_constraintTop_toTopOf="@+id/textView18"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView101"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:fontFamily="@font/fredericka_the_great"
        android:text="数独XX专用版"
        android:textAllCaps="false"
        android:textColor="#009688"
        android:textSize="33dp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.103"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.049" />

    <TextView
        android:id="@+id/textView21"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginTop="5dp"
        android:background="#FFFF3B"

        android:gravity="center"
        android:textAlignment="center"

        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/textView11"
        app:layout_constraintTop_toBottomOf="@+id/textView11"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView22"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"

        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView21"
        app:layout_constraintTop_toTopOf="@+id/textView21"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView23"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"

        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView22"
        app:layout_constraintTop_toTopOf="@+id/textView22"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView24"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"

        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView23"
        app:layout_constraintTop_toTopOf="@+id/textView23"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView25"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView24"
        app:layout_constraintTop_toTopOf="@+id/textView24"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView26"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView25"
        app:layout_constraintTop_toTopOf="@+id/textView25"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView27"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView26"
        app:layout_constraintTop_toTopOf="@+id/textView26"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView28"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView27"
        app:layout_constraintTop_toTopOf="@+id/textView27"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView29"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView28"
        app:layout_constraintTop_toTopOf="@+id/textView28"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView31"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginTop="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/textView21"
        app:layout_constraintTop_toBottomOf="@+id/textView21"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView32"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView31"
        app:layout_constraintTop_toTopOf="@+id/textView31"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView33"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView32"
        app:layout_constraintTop_toTopOf="@+id/textView32"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView34"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView33"
        app:layout_constraintTop_toTopOf="@+id/textView33"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView35"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView34"
        app:layout_constraintTop_toTopOf="@+id/textView34"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView36"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView35"
        app:layout_constraintTop_toTopOf="@+id/textView35"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView37"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView36"
        app:layout_constraintTop_toTopOf="@+id/textView36"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView38"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView37"
        app:layout_constraintTop_toTopOf="@+id/textView37"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView39"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView38"
        app:layout_constraintTop_toTopOf="@+id/textView38"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView41"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginTop="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/textView31"
        app:layout_constraintTop_toBottomOf="@+id/textView31"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView42"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart=" 4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView41"
        app:layout_constraintTop_toTopOf="@+id/textView41"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView43"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView42"
        app:layout_constraintTop_toTopOf="@+id/textView42"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView44"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView43"
        app:layout_constraintTop_toTopOf="@+id/textView43"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView45"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView44"
        app:layout_constraintTop_toTopOf="@+id/textView44"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView46"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView45"
        app:layout_constraintTop_toTopOf="@+id/textView45"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView47"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView46"
        app:layout_constraintTop_toTopOf="@+id/textView46"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView48"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView47"
        app:layout_constraintTop_toTopOf="@+id/textView47"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView49"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView48"
        app:layout_constraintTop_toTopOf="@+id/textView48"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView51"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginTop="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/textView41"
        app:layout_constraintTop_toBottomOf="@+id/textView41"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView52"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView51"
        app:layout_constraintTop_toTopOf="@+id/textView51"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView53"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView52"
        app:layout_constraintTop_toTopOf="@+id/textView52"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView54"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView53"
        app:layout_constraintTop_toTopOf="@+id/textView53"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView55"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView54"
        app:layout_constraintTop_toTopOf="@+id/textView54"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView56"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView55"
        app:layout_constraintTop_toTopOf="@+id/textView55"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView57"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView56"
        app:layout_constraintTop_toTopOf="@+id/textView56"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView58"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView57"
        app:layout_constraintTop_toTopOf="@+id/textView57"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView59"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView58"
        app:layout_constraintTop_toTopOf="@+id/textView58"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView61"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginTop="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/textView51"
        app:layout_constraintTop_toBottomOf="@+id/textView51"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView62"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView61"
        app:layout_constraintTop_toTopOf="@+id/textView61"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView63"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView62"
        app:layout_constraintTop_toTopOf="@+id/textView62"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView64"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView63"
        app:layout_constraintTop_toTopOf="@+id/textView63"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView65"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView64"
        app:layout_constraintTop_toTopOf="@+id/textView64"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView66"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView65"
        app:layout_constraintTop_toTopOf="@+id/textView65"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView67"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView66"
        app:layout_constraintTop_toTopOf="@+id/textView66"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView68"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView67"
        app:layout_constraintTop_toTopOf="@+id/textView67"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView69"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView68"
        app:layout_constraintTop_toTopOf="@+id/textView68"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView71"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginTop="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/textView61"
        app:layout_constraintTop_toBottomOf="@+id/textView61"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView72"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView71"
        app:layout_constraintTop_toTopOf="@+id/textView71"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView73"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView72"
        app:layout_constraintTop_toTopOf="@+id/textView72"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView74"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView73"
        app:layout_constraintTop_toTopOf="@+id/textView73"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView75"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView74"
        app:layout_constraintTop_toTopOf="@+id/textView74"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView76"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView75"
        app:layout_constraintTop_toTopOf="@+id/textView75"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView77"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView76"
        app:layout_constraintTop_toTopOf="@+id/textView76"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView78"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView77"
        app:layout_constraintTop_toTopOf="@+id/textView77"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView79"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView78"
        app:layout_constraintTop_toTopOf="@+id/textView78"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView81"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginTop="4dp"
        android:layout_marginStart="7dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.011"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/textView71"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView82"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView81"
        app:layout_constraintTop_toTopOf="@+id/textView81"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView83"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView82"
        app:layout_constraintTop_toTopOf="@+id/textView82"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView84"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView83"
        app:layout_constraintTop_toTopOf="@+id/textView83"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView85"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView84"
        app:layout_constraintTop_toTopOf="@+id/textView84"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView86"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"

        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView85"
        app:layout_constraintTop_toTopOf="@+id/textView85"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView87"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView86"
        app:layout_constraintTop_toTopOf="@+id/textView86"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView88"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView87"
        app:layout_constraintTop_toTopOf="@+id/textView87"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView89"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView88"
        app:layout_constraintTop_toTopOf="@+id/textView88"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView91"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginTop="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/textView81"
        app:layout_constraintTop_toBottomOf="@+id/textView81"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView92"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView91"
        app:layout_constraintTop_toTopOf="@+id/textView91"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView93"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView92"
        app:layout_constraintTop_toTopOf="@+id/textView92"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView94"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView93"
        app:layout_constraintTop_toTopOf="@+id/textView93"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView95"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView94"
        app:layout_constraintTop_toTopOf="@+id/textView94"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView96"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView95"
        app:layout_constraintTop_toTopOf="@+id/textView95"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView97"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView96"
        app:layout_constraintTop_toTopOf="@+id/textView96"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView98"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView97"
        app:layout_constraintTop_toTopOf="@+id/textView97"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView99"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#FFFF3B"
        android:gravity="center"
        android:textAlignment="center"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView98"
        app:layout_constraintTop_toTopOf="@+id/textView98"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginTop="20dp"
        android:background="#03A9F4"
        android:gravity="center"
        android:text="1"
        android:textAlignment="center"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/textView91"
        app:layout_constraintTop_toBottomOf="@+id/textView91"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#03A9F4"
        android:gravity="center"
        android:text="2"
        android:textAlignment="center"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView1"
        app:layout_constraintTop_toTopOf="@+id/textView1"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView3"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#03A9F4"
        android:gravity="center"
        android:text="3"
        android:textAlignment="center"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView2"
        app:layout_constraintTop_toTopOf="@+id/textView2"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView4"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#03A9F4"
        android:gravity="center"
        android:text="4"
        android:textAlignment="center"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView3"
        app:layout_constraintTop_toTopOf="@+id/textView3"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView5"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#03A9F4"
        android:gravity="center"
        android:text="5"
        android:textAlignment="center"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView4"
        app:layout_constraintTop_toTopOf="@+id/textView4"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView6"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#03A9F4"
        android:gravity="center"
        android:text="6"
        android:textAlignment="center"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView5"
        app:layout_constraintTop_toTopOf="@+id/textView5"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView7"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="5dp"
        android:background="#03A9F4"
        android:gravity="center"
        android:text="7"
        android:textAlignment="center"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView6"
        app:layout_constraintTop_toTopOf="@+id/textView6"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView8"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#03A9F4"
        android:gravity="center"
        android:text="8"
        android:textAlignment="center"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView7"
        app:layout_constraintTop_toTopOf="@+id/textView7"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView9"
        android:layout_width="35dp"
        android:layout_height="35dp"

        android:layout_marginStart="4dp"
        android:background="#03A9F4"
        android:gravity="center"
        android:text="9"
        android:textAlignment="center"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView8"
        app:layout_constraintTop_toTopOf="@+id/textView8"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView100"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="10dp"
        android:layout_marginTop="20dp"
        android:text="编辑完成"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/textView1" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="10dp"
        android:layout_marginTop="5dp"
        android:text="重新编辑"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/button1" />


    <Button
        android:id="@+id/button5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="8dp"
        android:layout_marginTop="72dp"
        android:text="随机题目"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/button3"
        app:layout_constraintTop_toBottomOf="@+id/textView7" />

    <Button
        android:id="@+id/button6"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="8dp"
        android:layout_marginTop="20dp"
        android:text="清        除"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/button3"
        app:layout_constraintTop_toBottomOf="@+id/textView7" />

    <Button
        android:id="@+id/button4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="8dp"
        android:layout_marginTop="5dp"
        android:text="重        玩"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/button2"
        app:layout_constraintTop_toBottomOf="@+id/button1" />

    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="8dp"
        android:layout_marginTop="20dp"
        android:text="清        空"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/button1"
        app:layout_constraintTop_toBottomOf="@+id/textView7" />

    <TextView
        android:id="@+id/textView1000"
        android:layout_width="137dp"
        android:layout_height="40dp"
        android:layout_marginTop="56dp"
        android:text="  ver:3.8 by:kim"
        android:textColor="#3656F4"
        android:textSize="16dp"
        android:textStyle="bold"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView101"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/textView10"
        android:layout_width="100dp"
        android:layout_height="30dp"
        android:layout_marginTop="76dp"
        android:fontFamily="@font/alumni_sans_thin"
        android:text="  2024.12"
        android:textColor="#F32133"
        android:textSize="12dp"
        android:textStyle="italic"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toEndOf="@+id/textView101"
        app:layout_constraintTop_toTopOf="parent" />

    <View
        android:id="@+id/view"
        android:layout_width="2dp"
        android:layout_height="357dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="120dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <View
        android:id="@+id/view1"
        android:layout_width="2dp"
        android:layout_height="357dp"
        android:layout_marginStart="38dp"
        android:background="#000000"
        app:layout_constraintStart_toEndOf="@+id/view19"
        app:layout_constraintTop_toTopOf="@+id/view19" />

    <View
        android:id="@+id/view2"
        android:layout_width="2dp"
        android:layout_height="357dp"
        android:layout_marginStart="38dp"
        android:background="#000000"
        app:layout_constraintStart_toEndOf="@+id/view15"
        app:layout_constraintTop_toTopOf="@+id/view15" />

    <View
        android:id="@+id/view14"
        android:layout_width="1dp"
        android:layout_height="357dp"
        android:layout_marginStart="38dp"
        android:background="#000000"
        app:layout_constraintStart_toEndOf="@+id/view"
        app:layout_constraintTop_toTopOf="@+id/view" />

    <View
        android:id="@+id/view15"
        android:layout_width="1dp"
        android:layout_height="357dp"
        android:layout_marginStart="39dp"
        android:background="#000000"
        app:layout_constraintStart_toEndOf="@+id/view14"
        app:layout_constraintTop_toTopOf="@+id/view14" />

    <View
        android:id="@+id/view16"
        android:layout_width="1dp"
        android:layout_height="357dp"
        android:layout_marginStart="38dp"
        android:background="#000000"
        app:layout_constraintStart_toEndOf="@+id/view2"
        app:layout_constraintTop_toTopOf="@+id/view2" />

    <View
        android:id="@+id/view17"
        android:layout_width="1dp"
        android:layout_height="360dp"
        android:layout_marginStart="38dp"
        android:background="#000000"
        app:layout_constraintStart_toEndOf="@+id/view16"
        app:layout_constraintTop_toTopOf="@+id/view16" />

    <View
        android:id="@+id/view18"
        android:layout_width="1dp"
        android:layout_height="357dp"
        android:layout_marginStart="38dp"
        android:background="#000000"
        app:layout_constraintStart_toEndOf="@+id/view3"
        app:layout_constraintTop_toTopOf="@+id/view3" />

    <View
        android:id="@+id/view19"
        android:layout_width="1dp"
        android:layout_height="357dp"
        android:layout_marginStart="38dp"
        android:background="#000000"
        app:layout_constraintStart_toEndOf="@+id/view18"
        app:layout_constraintTop_toTopOf="@+id/view18" />

    <View
        android:id="@+id/view3"
        android:layout_width="2dp"
        android:layout_height="357dp"
        android:layout_marginStart="38dp"
        android:background="#000000"
        app:layout_constraintStart_toEndOf="@+id/view17"
        app:layout_constraintTop_toTopOf="@+id/view17" />

    <View
        android:id="@+id/view8"
        android:layout_width="357dp"
        android:layout_height="1dp"
        android:layout_marginStart="9dp"
        android:layout_marginTop="39dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/view4" />

    <View
        android:id="@+id/view9"
        android:layout_width="357dp"
        android:layout_height="1dp"
        android:layout_marginStart="9dp"
        android:layout_marginTop="39dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/view8"  />

    <View
        android:id="@+id/view10"
        android:layout_width="357dp"
        android:layout_height="1dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="38dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/view5" />

    <View
        android:id="@+id/view11"
        android:layout_width="357dp"
        android:layout_height="1dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="38dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/view10" />

    <View
        android:id="@+id/view12"
        android:layout_width="357dp"
        android:layout_height="1dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="38dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/view6"/>

    <View
        android:id="@+id/view13"
        android:layout_width="357dp"
        android:layout_height="1dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="38dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/view12" />


    <View
        android:id="@+id/view4"
        android:layout_width="357dp"
        android:layout_height="2dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="120dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <View
        android:id="@+id/view5"
        android:layout_width="357dp"
        android:layout_height="2dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="39dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/view9" />

    <View
        android:id="@+id/view6"
        android:layout_width="357dp"
        android:layout_height="2dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="38dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/view11"/>

    <View
        android:id="@+id/view7"
        android:layout_width="357dp"
        android:layout_height="2dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="38dp"
        android:background="#000000"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/view13" />

</androidx.constraintlayout.widget.ConstraintLayout>

mainactivity.java

package com.shudu.shudu666;

import static java.lang.System.*;

import android.annotation.SuppressLint;
import android.content.Context;
import android.content.DialogInterface;
import android.content.res.AssetManager;
import android.graphics.Color;
import android.graphics.Typeface;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.Random;
import java.util.Scanner;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    public TextView mytextview,textView1000;
    public boolean biaozhi;//是否重复标志
    private static TextView[] textViews;//81个textview
    private static TextView[][] textViewshang;//9行二维数组
    private static TextView[][] textViewslie;//9列二维数组
    private static TextView[][] textViewsgong;//9组二维数组
    private static TextView[] anniushuzi;//1,2,3..。10数字的数组
    private static TextView[] textViewshang1, textViewshang2, textViewshang3, textViewshang4, textViewshang5, textViewshang6, textViewshang7, textViewshang8, textViewshang9;
    private static TextView[] textViewslie1, textViewslie2, textViewslie3, textViewslie4, textViewslie5, textViewslie6, textViewslie7, textViewslie8, textViewslie9;
    private static TextView[] textviewgonh1, textviewgonh2, textviewgonh3, textviewgonh4, textviewgonh5, textviewgonh6, textviewgonh7, textviewgonh8, textviewgonh9;

    private TextView textview1, textview2, textview3, textview4, textview5, textview6, textview7, textview8, textview9;
    private TextView textview11, textview12, textview13, textview14, textview15, textview16, textview17, textview18, textview19;
    private TextView textview21, textview22, textview23, textview24, textview25, textview26, textview27, textview28, textview29;
    private TextView textview31, textview32, textview33, textview34, textview35, textview36, textview37, textview38, textview39;
    private TextView textview41, textview42, textview43, textview44, textview45, textview46, textview47, textview48, textview49;
    private TextView textview51, textview52, textview53, textview54, textview55, textview56, textview57, textview58, textview59;
    private TextView textview61, textview62, textview63, textview64, textview65, textview66, textview67, textview68, textview69;
    private TextView textview71, textview72, textview73, textview74, textview75, textview76, textview77, textview78, textview79;
    private TextView textview81, textview82, textview83, textview84, textview85, textview86, textview87, textview88, textview89;
    private TextView textview91, textview92, textview93, textview94, textview95, textview96, textview97, textview98, textview99;

    private Button button1, button2, button3, button4, button5, button6;
    private Context mContext;
    private MediaPlayer mediaplayer;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        EdgeToEdge.enable(this);
        setContentView(R.layout.activity_main);
        mContext = getApplicationContext();
        ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> {
            Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
            v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
            return insets;
        });
        mytextview = (TextView) findViewById(R.id.textView100);

        textview1 = (TextView) findViewById(R.id.textView1);
        textview2 = (TextView) findViewById(R.id.textView2);
        textview3 = (TextView) findViewById(R.id.textView3);
        textview4 = (TextView) findViewById(R.id.textView4);
        textview5 = (TextView) findViewById(R.id.textView5);
        textview6 = (TextView) findViewById(R.id.textView6);
        textview7 = (TextView) findViewById(R.id.textView7);
        textview8 = (TextView) findViewById(R.id.textView8);
        textview9 = (TextView) findViewById(R.id.textView9);

        textview11 = (TextView) findViewById(R.id.textView11);
        textview12 = (TextView) findViewById(R.id.textView12);
        textview13 = (TextView) findViewById(R.id.textView13);
        textview14 = (TextView) findViewById(R.id.textView14);
        textview15 = (TextView) findViewById(R.id.textView15);
        textview16 = (TextView) findViewById(R.id.textView16);
        textview17 = (TextView) findViewById(R.id.textView17);
        textview18 = (TextView) findViewById(R.id.textView18);
        textview19 = (TextView) findViewById(R.id.textView19);

        textview21 = (TextView) findViewById(R.id.textView21);
        textview22 = (TextView) findViewById(R.id.textView22);
        textview23 = (TextView) findViewById(R.id.textView23);
        textview24 = (TextView) findViewById(R.id.textView24);
        textview25 = (TextView) findViewById(R.id.textView25);
        textview26 = (TextView) findViewById(R.id.textView26);
        textview27 = (TextView) findViewById(R.id.textView27);
        textview28 = (TextView) findViewById(R.id.textView28);
        textview29 = (TextView) findViewById(R.id.textView29);

        textview31 = (TextView) findViewById(R.id.textView31);
        textview32 = (TextView) findViewById(R.id.textView32);
        textview33 = (TextView) findViewById(R.id.textView33);
        textview34 = (TextView) findViewById(R.id.textView34);
        textview35 = (TextView) findViewById(R.id.textView35);
        textview36 = (TextView) findViewById(R.id.textView36);
        textview37 = (TextView) findViewById(R.id.textView37);
        textview38 = (TextView) findViewById(R.id.textView38);
        textview39 = (TextView) findViewById(R.id.textView39);

        textview41 = (TextView) findViewById(R.id.textView41);
        textview42 = (TextView) findViewById(R.id.textView42);
        textview43 = (TextView) findViewById(R.id.textView43);
        textview44 = (TextView) findViewById(R.id.textView44);
        textview45 = (TextView) findViewById(R.id.textView45);
        textview46 = (TextView) findViewById(R.id.textView46);
        textview47 = (TextView) findViewById(R.id.textView47);
        textview48 = (TextView) findViewById(R.id.textView48);
        textview49 = (TextView) findViewById(R.id.textView49);

        textview51 = (TextView) findViewById(R.id.textView51);
        textview52 = (TextView) findViewById(R.id.textView52);
        textview53 = (TextView) findViewById(R.id.textView53);
        textview54 = (TextView) findViewById(R.id.textView54);
        textview55 = (TextView) findViewById(R.id.textView55);
        textview56 = (TextView) findViewById(R.id.textView56);
        textview57 = (TextView) findViewById(R.id.textView57);
        textview58 = (TextView) findViewById(R.id.textView58);
        textview59 = (TextView) findViewById(R.id.textView59);

        textview61 = (TextView) findViewById(R.id.textView61);
        textview62 = (TextView) findViewById(R.id.textView62);
        textview63 = (TextView) findViewById(R.id.textView63);
        textview64 = (TextView) findViewById(R.id.textView64);
        textview65 = (TextView) findViewById(R.id.textView65);
        textview66 = (TextView) findViewById(R.id.textView66);
        textview67 = (TextView) findViewById(R.id.textView67);
        textview68 = (TextView) findViewById(R.id.textView68);
        textview69 = (TextView) findViewById(R.id.textView69);

        textview71 = (TextView) findViewById(R.id.textView71);
        textview72 = (TextView) findViewById(R.id.textView72);
        textview73 = (TextView) findViewById(R.id.textView73);
        textview74 = (TextView) findViewById(R.id.textView74);
        textview75 = (TextView) findViewById(R.id.textView75);
        textview76 = (TextView) findViewById(R.id.textView76);
        textview77 = (TextView) findViewById(R.id.textView77);
        textview78 = (TextView) findViewById(R.id.textView78);
        textview79 = (TextView) findViewById(R.id.textView79);

        textview81 = (TextView) findViewById(R.id.textView81);
        textview82 = (TextView) findViewById(R.id.textView82);
        textview83 = (TextView) findViewById(R.id.textView83);
        textview84 = (TextView) findViewById(R.id.textView84);
        textview85 = (TextView) findViewById(R.id.textView85);
        textview86 = (TextView) findViewById(R.id.textView86);
        textview87 = (TextView) findViewById(R.id.textView87);
        textview88 = (TextView) findViewById(R.id.textView88);
        textview89 = (TextView) findViewById(R.id.textView89);

        textview91 = (TextView) findViewById(R.id.textView91);
        textview92 = (TextView) findViewById(R.id.textView92);
        textview93 = (TextView) findViewById(R.id.textView93);
        textview94 = (TextView) findViewById(R.id.textView94);
        textview95 = (TextView) findViewById(R.id.textView95);
        textview96 = (TextView) findViewById(R.id.textView96);
        textview97 = (TextView) findViewById(R.id.textView97);
        textview98 = (TextView) findViewById(R.id.textView98);
        textview99 = (TextView) findViewById(R.id.textView99);

        textView1000=(TextView)findViewById(R.id.textView1000);
        Typeface typeface= Typeface.createFromAsset(getAssets(),"KUNSTLER.TTF");
        textView1000.setTypeface(typeface);


        //81个位置
        textViews = new TextView[]{
                textview11, textview12, textview13, textview14, textview15, textview16, textview17, textview18, textview19,
                textview21, textview22, textview23, textview24, textview25, textview26, textview27, textview28, textview29,
                textview31, textview32, textview33, textview34, textview35, textview36, textview37, textview38, textview39,
                textview41, textview42, textview43, textview44, textview45, textview46, textview47, textview48, textview49,
                textview51, textview52, textview53, textview54, textview55, textview56, textview57, textview58, textview59,
                textview61, textview62, textview63, textview64, textview65, textview66, textview67, textview68, textview69,
                textview71, textview72, textview73, textview74, textview75, textview76, textview77, textview78, textview79,
                textview81, textview82, textview83, textview84, textview85, textview86, textview87, textview88, textview89,
                textview91, textview92, textview93, textview94, textview95, textview96, textview97, textview98, textview99
        };
        //行
        textViewshang1 = new TextView[]{textview11, textview12, textview13, textview14, textview15, textview16, textview17, textview18, textview19};
        textViewshang2 = new TextView[]{textview21, textview22, textview23, textview24, textview25, textview26, textview27, textview28, textview29};
        textViewshang3 = new TextView[]{textview31, textview32, textview33, textview34, textview35, textview36, textview37, textview38, textview39};
        textViewshang4 = new TextView[]{textview41, textview42, textview43, textview44, textview45, textview46, textview47, textview48, textview49};
        textViewshang5 = new TextView[]{textview51, textview52, textview53, textview54, textview55, textview56, textview57, textview58, textview59};
        textViewshang6 = new TextView[]{textview61, textview62, textview63, textview64, textview65, textview66, textview67, textview68, textview69};
        textViewshang7 = new TextView[]{textview71, textview72, textview73, textview74, textview75, textview76, textview77, textview78, textview79};
        textViewshang8 = new TextView[]{textview81, textview82, textview83, textview84, textview85, textview86, textview87, textview88, textview89};
        textViewshang9 = new TextView[]{textview91, textview92, textview93, textview94, textview95, textview96, textview97, textview98, textview99};
        //列
        textViewslie1 = new TextView[]{textview11, textview21, textview31, textview41, textview51, textview61, textview71, textview81, textview91};
        textViewslie2 = new TextView[]{textview12, textview22, textview32, textview42, textview52, textview62, textview72, textview82, textview92};
        textViewslie3 = new TextView[]{textview13, textview23, textview33, textview43, textview53, textview63, textview73, textview83, textview93};
        textViewslie4 = new TextView[]{textview14, textview24, textview34, textview44, textview54, textview64, textview74, textview84, textview94};
        textViewslie5 = new TextView[]{textview15, textview25, textview35, textview45, textview55, textview65, textview75, textview85, textview95};
        textViewslie6 = new TextView[]{textview16, textview26, textview36, textview46, textview56, textview66, textview76, textview86, textview96};
        textViewslie7 = new TextView[]{textview17, textview27, textview37, textview47, textview57, textview67, textview77, textview87, textview97};
        textViewslie8 = new TextView[]{textview18, textview28, textview38, textview48, textview58, textview68, textview78, textview88, textview98};
        textViewslie9 = new TextView[]{textview19, textview29, textview39, textview49, textview59, textview69, textview79, textview89, textview99};
        //宫
        textviewgonh1 = new TextView[]{textview11, textview12, textview13, textview21, textview22, textview23, textview31, textview32, textview33};
        textviewgonh2 = new TextView[]{textview14, textview15, textview16, textview24, textview25, textview26, textview34, textview35, textview36};
        textviewgonh3 = new TextView[]{textview17, textview18, textview19, textview27, textview28, textview29, textview37, textview38, textview39};
        textviewgonh4 = new TextView[]{textview41, textview42, textview43, textview51, textview52, textview53, textview61, textview62, textview63};
        textviewgonh5 = new TextView[]{textview44, textview45, textview46, textview54, textview55, textview56, textview64, textview65, textview66};
        textviewgonh6 = new TextView[]{textview47, textview48, textview49, textview57, textview58, textview59, textview67, textview68, textview69};
        textviewgonh7 = new TextView[]{textview71, textview72, textview73, textview81, textview82, textview83, textview91, textview92, textview93};
        textviewgonh8 = new TextView[]{textview74, textview75, textview76, textview84, textview85, textview86, textview94, textview95, textview96};
        textviewgonh9 = new TextView[]{textview77, textview78, textview79, textview87, textview88, textview89, textview97, textview98, textview99};

        textViewshang = new TextView[][]{textViewshang1, textViewshang2, textViewshang3, textViewshang4, textViewshang5, textViewshang6, textViewshang7, textViewshang8, textViewshang9};
        textViewslie = new TextView[][]{textViewslie1, textViewslie2, textViewslie3, textViewslie4, textViewslie5, textViewslie6, textViewslie7, textViewslie8, textViewslie9};
        textViewsgong = new TextView[][]{textviewgonh1, textviewgonh2, textviewgonh3, textviewgonh4, textviewgonh5, textviewgonh6, textviewgonh7, textviewgonh8, textviewgonh9};

        anniushuzi = new TextView[]{textview1, textview2, textview3, textview4, textview5, textview6, textview7, textview8, textview9};

        button1 = (Button) findViewById(R.id.button1);
        button2 = (Button) findViewById(R.id.button2);
        button3 = (Button) findViewById(R.id.button3);
        button4 = (Button) findViewById(R.id.button4);
        button5 = (Button) findViewById(R.id.button5);
        button6 = (Button) findViewById(R.id.button6);

        button1.setOnClickListener(this);
        button2.setOnClickListener(this);
        button3.setOnClickListener(this);
        button4.setOnClickListener(this);
        button5.setOnClickListener(this);
        button6.setOnClickListener(this);
        mediaplayer= MediaPlayer.create(this,R.raw.ding);

        //检查文件是否存在,存在读文件内容。
        File file = new File(getFilesDir(), "1000.txt");
        if (file.exists()) {
            readFileAndSplit();//读取数据并填到格子内
            //判断,如果非空白格数量大于20个视为解答状态,未填写位置字体红色。否则视频编辑状态,字体黑色。
            int i = 0;
            for (TextView textView:textViews){
                if(textView.getText().toString()!=""){
                    i++;
                }
            }
            if(i>20){
                chushihua();//设置可填写位置字体红色,背景黄色
            }else{
                for (TextView textView:textViews){
                    textView.setTextColor(Color.BLACK);//非空白数量小于20,视为编辑状态,黑色字体。
                }
            }

        }else {//文件不存在,黑色字体。第一次使用本app的情况。
            for(TextView textView:textViews){
                textView.setTextColor(Color.BLACK);
            }
        }

        //遍历设置81个textview点击后背景变为灰色
        for (TextView viewall : textViews) {
            viewall.setOnTouchListener(new View.OnTouchListener() {
                @SuppressLint("ClickableViewAccessibility")
                @Override
                public boolean onTouch(View v, MotionEvent event) {
                    switch (event.getAction()) {
                        case MotionEvent.ACTION_DOWN:
                            for (TextView viewn : textViews) {//先设置所有背景为黄色
                                viewn.setBackgroundColor(Color.YELLOW);
                            }
                            mytextview.setBackgroundColor(Color.YELLOW);//将前一个textview的背景色改为黄色
                            mytextview = viewall;//所有对mytextview的操作变成对viewall的操作?。
                            viewall.setBackgroundColor(Color.GRAY);
                            //显示所有行列宫内相同数字
                            for (TextView textView : textViews) {
                                if (textView.getText().toString().equals(mytextview.getText().toString()) && mytextview.getText().toString() != "") {
                                    textView.setBackgroundColor(Color.GRAY);
                                }
                            }
//                    case MotionEvent.ACTION_MOVE:
//                        // 当滑动时的处理
//                        break;
//                    case MotionEvent.ACTION_UP:
//                        // 当抬起时的处理
//                        //textView1.setText("Hello World!");
                    }
                    return true; // 返回true表示已消费事件,不再传递,即不会再响应ontouchlistener事件。
                }
            });
        }

        // 遍历设置每个数字(1,2,3,,,)的textview功能
        for (TextView viewnum : anniushuzi) {
            viewnum.setOnTouchListener(new View.OnTouchListener() {
                @Override
                public boolean onTouch(View v, MotionEvent event) {
                    switch (event.getAction()) {
                        case MotionEvent.ACTION_DOWN:// 当按下时的处理
                            //如果是空的才能修改
                            if (mytextview.getText().toString() == "") {
                                mytextview.setText(viewnum.getText());//修改选定的textvie的text等于点击的数字。
                                //stopSound();
                                mediaplayer.start();
                            }
                            paichong(mytextview);//行列宫排重
                            out.println("标志为:"+biaozhi);
                            if (biaozhi==false){//biaozhi==false表示未出错,才保存,最后一步出错不保存。
                                save();
                            }

                            modnumbackcolor(mytextview, viewnum);//9个数字全找到后设置该数字背景色为懂蓝色,
                            //通过计数空值判断是否全部填写完成,空值为0完成,弹窗。
                            int i=0;
                            for (TextView textView : textViews) {
                                if (textView.getText().toString() == "") {
                                    i++;
                                }
                            }
                            if(i==0&&biaozhi==false){
                                AlertDialog.Builder builder1 = new AlertDialog.Builder(MainActivity.this);
                                builder1.setTitle("恭喜完成!");
                                builder1.setMessage("今年发大财!!!");
                                builder1.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                                    public void onClick(DialogInterface dialog, int which) {//点击确定后操作

                                    }
                                });
                                AlertDialog dialog = builder1.create();
                                dialog.show();
                            }
                    }

                    return true; // 返回true表示已消费事件,不再传递给其他监听器,

                }

            });
        }

    }
    protected void onDestroy(){
        super.onDestroy();;
        if (mediaplayer!=null){
            mediaplayer.release();
            mediaplayer=null;
        }
    }

    //6个按钮功能;
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.button1://编辑完成
                for (TextView textView : textViews) {
                    if (textView.getText().toString() == "") {
                        textView.setTextColor(Color.RED);
                        textView.setBackgroundColor(Color.YELLOW);
                        settextviewcolor();
                        save();
                    }
                }

                break;
            case R.id.button2://重新编辑
                for (TextView textView : textViews) {
                    //如果text为空或字体为红色清除text并将text设置为黑色
                    if (textView.getText().toString() == "" || textView.getCurrentTextColor() == 0xffff0000) {
                        textView.setText("");
                        textView.setTextColor(Color.BLACK);
                        settextviewcolor();

                    }
                }
                break;
            case R.id.button3://清空
                for (TextView textView : textViews) {
                    textView.setText("");//清空text
                    textView.setTextColor(Color.BLACK);//设置text为黑色
                    textView.setBackgroundColor(Color.YELLOW);
                    settextviewcolor();
                }
                save();
                break;
            case R.id.button4://重玩
                for (TextView textView : textViews) {
                    if (textView.getCurrentTextColor() == 0xffff0000) {//只设置text为红色的text为空
                        textView.setText("");
                        settextviewcolor();
                        for (TextView linshiview : textViews) {
                            linshiview.setBackgroundColor(Color.YELLOW);
                        };
                    }

                }
                save();
                break;
            case R.id.button5://随机题目
                //设置字体颜色为黑色
                for(TextView viewn:textViews){
                    viewn.setTextColor(Color.BLACK);//设置显示区字体黑色
                    settextviewcolor();//设置候选数字字体黑色

                }
                String randomLine = readRandomLine(this, "1001.txt");
                if (randomLine!= null) {
                    // 对随机读取到的这行内容进行后续处理
                    String[] parts = randomLine.split(",");
                    int m = 0;
                    for (String n : parts) {//读出的空值赋值给textview后不能编辑,应该是非空,原因不知道。
                        //这个a给textview后,再gettext()得到的值即不是""也不是null,也不是空,看不见,所以无法编辑,
                        //所以把每个值都转换成数字,那个看不见的值转换会出错,出错就给个""值,不出错的正常赋值。
                        //这是个野路子,现在还没找到其他解决办法。
                        try {
                            int num = Integer.parseInt(n);
                            textViews[m].setText(n);
                            m += 1;
                        } catch (NumberFormatException e) {
                            textViews[m].setText("");
                            m += 1;
                        }
                    }
                }
                chushihua();
                save();
                break;
            case R.id.button6://清除
                mytextview.setText("");
                settextviewcolor();
                for (TextView textView : textViews) {
                    textView.setBackgroundColor(Color.YELLOW);
                }
                save();
                break;
        }
    }

    //设置1,2,3...数字为黑色
    public void settextviewcolor() {
        for (TextView view : anniushuzi) {
            view.setTextColor(Color.BLACK);
        }
    }

    //9个数字全找到后设置该数字与背景色相同,
    public void modnumbackcolor(TextView view, TextView view1) {//TextView作为形参
        int i = 0;
        for (TextView textView : textViews) {
            if (textView.getText().toString().equals(view.getText().toString()) && view.getText().toString() != "") {
                textView.setBackgroundColor(Color.GRAY);
                i ++;
                //如果i=9则设置textview1-9前背景色相同
                if (i == 9&&biaozhi==true) {
                }else if(i==9&&view.getText().toString().equals(view1.getText().toString())){
                    view1.setTextColor(Color.parseColor("#03A9F4"));
                }
            }
        }
    }
    public void showsamenum1(TextView view) {//TextView作为形参

    }

    //下面自定义函数说明:行列宫分别判定重复,直接判定没搞定。mytextview是全局变量,要仔细看。
    public void paichong(TextView view) {//view为点击的textview,即mytextview.通过点击赋值,每次点击都会变。
        //行内重复判定,列宫的判定方法相同。
        biaozhi=false;//如果填写重复数字(两个数字相同)的标志
        for (int i = 0; i < 9; i++) {//遍历textviewhang数组
            for (int j = 0; j < 9; j++) {//遍历textviewhang内每行数组内的元素,即每行的textview。
                if (textViewshang[i][j] == view) {//定位点击的textview所在行,如果相等则textviewshang[i]即为mytextview所在行。
                    int k = 0;//计数初始化
                    for (TextView viewhang : textViewshang[i]) {//遍历行
                        if (viewhang.getText().toString().equals(view.getText().toString())) {//找到与输入的数值(1,2,3..。)相等的textview并计数。转下行。。
                            k++;//计数+1,与k+=1相同                                          //==比较的是地址,可能不相同,equals()比较的是值,此处只能用equals(),否则排重出错。
                        };
                        if (viewhang.getText().toString().equals(view.getText().toString()) && k == 2) {//如果值(1,2,3..)相同并且计数等于2(重复)则背景改为红色
                            biaozhi=true;//如果填写重复数字(两个数字相同)的标志
                            //弹窗
                            AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                            builder.setTitle("二货!");
                            builder.setMessage("行内输入重复!!!");
                            builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {//点击确定后操作
                                    //view1.setBackgroundColor(Color.GRAY);
                                    view.setBackgroundColor(Color.GRAY);//颜色改为灰
                                    view.setText("");//清空输入的重复值

                                }
                            });
                            AlertDialog dialog = builder.create();
                            dialog.show();
                            break;
                        }
                    }
                }
            }
        }
        //列内重复判定
        for (int i = 0; i < 9; i++) {
            for (int j = 0; j < 9; j++) {
                if (textViewslie[i][j] == view) {
                    int k = 0;
                    for (TextView viewlie : textViewslie[i]) {
                        if (viewlie.getText().toString().equals(view.getText().toString())) {
                            k++;
                        }
                        ;
                        if (viewlie.getText().toString().equals(view.getText().toString()) && k == 2) {
                            view.setBackgroundColor(Color.RED);
                            biaozhi=true;
                            AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                            builder.setTitle("二货!");
                            builder.setMessage("列内输入重复!!!");
                            builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    //view1.setBackgroundColor(Color.GRAY);
                                    view.setBackgroundColor(Color.GRAY);
                                    view.setText("");

                                }
                            });
                            AlertDialog dialog = builder.create();
                            dialog.show();
                            break;
                        }
                    }
                }
            }
        }
        //宫内重复判定
        for (int i = 0; i < 9; i++) {
            for (int j = 0; j < 9; j++) {
                if (textViewsgong[i][j] == view) {
                    int k = 0;
                    for (TextView viewgong : textViewsgong[i]) {
                        if (viewgong.getText().toString().equals(view.getText().toString())) {
                            k++;
                        }
                        ;
                        if (viewgong.getText().toString().equals(view.getText().toString()) && k == 2) {
                            //view.setBackgroundColor(Color.RED);
                            biaozhi=true;
                            AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                            builder.setTitle("二货!");
                            builder.setMessage("宫内输入重复!!!");
                            builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    //view1.setBackgroundColor(Color.GRAY);
                                    view.setBackgroundColor(Color.GRAY);
                                    view.setText("");

                                }
                            });
                            AlertDialog dialog = builder.create();
                            dialog.show();
                            break;
                        }
                    }
                }
            }
        }
    }

    public void save() {
        File file = new File(getFilesDir(), "1000.txt");
        try (PrintWriter out = new PrintWriter(new FileWriter(file))) {

            for (TextView textView : textViews) {
                String strings = textView.getText().toString();
                out.print(strings);
                out.print(",");
            }

        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public void readFileAndSplit() {

        File file = new File(getFilesDir(), "1000.txt");//这个必须单独写,不能直接写到try里面,不知道为啥。
        try (BufferedReader reader = new BufferedReader(new FileReader(file))) {
            String line = reader.readLine();//读取行
            String[] parts = line.split(",");//split按照“,”分割,并写进part1数组
            int m = 0;
            for (String n : parts) {//读出的空值赋值给textview后不能编辑,应该是非空,原因不知道。
                //这个a给textview后,再gettext()得到的值即不是""也不是null,也不是空,看不见,所以无法编辑,
                //所以把每个值都转换成数字,那个看不见的值转换会出错,出错就给个""值,不出错的正常赋值。
                //这是个野路子,现在还没找到其他解决办法。
                try {
                    int num = Integer.parseInt(n);
                    textViews[m].setText(n);
                    m += 1;
                } catch (NumberFormatException e) {
                    textViews[m].setText("");
                    m += 1;
                }
            }
        } catch (FileNotFoundException e) {
            throw new RuntimeException(e);
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }


    public  String readRandomLine(Context context, String fileName) {
        AssetManager assetManager = context.getAssets();
        try {
            InputStream inputStream = assetManager.open(fileName);
            BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
            String[] lines = new String[100];
            int index = 0;
            String line;
            while ((line = reader.readLine())!= null && index < 100) {
                lines[index++] = line;
            }
            reader.close();
            inputStream.close();
            if (index > 0) {
                Random random = new Random();
                int randomIndex = random.nextInt(index);
                return lines[randomIndex];
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        return null;
    }
    //设置可填写位置字体红色,背景黄色
    private void chushihua(){
        for (TextView textView : textViews) {
            if (textView.getText().toString() == "") {
                textView.setTextColor(Color.RED);
                textView.setBackgroundColor(Color.YELLOW);
            }
        }
    }


}

想玩的自己研究。不想研究的去下载,我把apk上传上来,见连接。

https://download.youkuaiyun.com/download/kim5659/90166445?spm=1001.2014.3001.5501

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kim5659

你的鼓励是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值