krtmi
@krtmi

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

【Android studio】Java タイム結果の表示について

解決したいこと

Android studio Javaで、クイズアプリを作っています。
サンプルコードを見ながら作っている初心者です。
クイズ解答にかかった時間を、結果画面(次ページの別画面)に表示したいです。
クイズ実行中にストップウォッチを動かすことはできたのですが、結果画面(ResultActivity)へタイムの結果を表示する方法が分かりません。
教えて頂けると幸いです。

該当するソースコード

public class SabActivity extends AppCompatActivity {

    TextView clearTime;
    Handler handler;
    Runnable runnable;
    long startTime, elapsedTime;


    private TextView countLabel;
    private TextView questionLabel;
    private Button answerBtn1;
    private Button answerBtn2;
    private Button answerBtn3;
    private Button answerBtn4;

    private String rightAnswer;
    private int rightAnswerCount;
    private int quizCount = 1;
    static final private int QUIZ_COUNT = 10;


    ArrayList<ArrayList<String>> quizArray = new ArrayList<>();

    String[][] quizData = {
            // {"問題", "正解", "選択肢1", "選択肢2", "選択肢3"}
 };
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_sab);

        //タイムスタート
        onTimer();

        clearTime = findViewById(R.id.text_clearTime);
        countLabel = findViewById(R.id.countLabel);
        questionLabel = findViewById(R.id.questionLabel);
        answerBtn1 = findViewById(R.id.answerBtn1);
        answerBtn2 = findViewById(R.id.answerBtn2);
        answerBtn3 = findViewById(R.id.answerBtn3);
        answerBtn4 = findViewById(R.id.answerBtn4);

        for (String[] quizDatum : quizData) {

           
            ArrayList<String> tmpArray = new ArrayList<>();

            
            tmpArray.add(quizDatum[0]);  // 問題
            tmpArray.add(quizDatum[1]);  // 正解
            tmpArray.add(quizDatum[2]);  // 選択肢1
            tmpArray.add(quizDatum[3]);  // 選択肢2
            tmpArray.add(quizDatum[4]);  // 選択肢3

            
            quizArray.add(tmpArray);
        }
        showNextQuiz();
    }


    public void showNextQuiz() {
        
        countLabel.setText(getString(R.string.count_label, quizCount));

        
        Random random = new Random();
        int randomNum = random.nextInt(quizArray.size());

        ArrayList<String> quiz = quizArray.get(randomNum);

        questionLabel.setText(quiz.get(0));

        rightAnswer = quiz.get(1);

        quiz.remove(0);

        Collections.shuffle(quiz);

        answerBtn1.setText(quiz.get(0));
        answerBtn2.setText(quiz.get(1));
        answerBtn3.setText(quiz.get(2));
        answerBtn4.setText(quiz.get(3));

        
        quizArray.remove(randomNum);
    }
//ストップウォッチ
    public void onTimer() {

        handler = new Handler();
        startTime = System.currentTimeMillis();
        runnable = new Runnable() {
            @Override
            public void run() {
                elapsedTime = System.currentTimeMillis() - startTime;
                SimpleDateFormat sdf = new SimpleDateFormat("mm:ss.SSS", Locale.US);
                clearTime.setText(sdf.format(elapsedTime));
                handler.removeCallbacks(runnable);
                handler.postDelayed(runnable, 10);
            }

        };
        handler.postDelayed(runnable,10);}
    public void stopTimer() {

        handler.removeCallbacks(runnable);

    }

    public void checkAnswer(View view){
            ImageView imageView = new ImageView(this);
            Button answerBtn = findViewById(view.getId());
            String btnText = answerBtn.getText().toString();

            if (btnText.equals(rightAnswer)) {
                soundPool.play(mp3a, 1f, 1f, 0, 0, 1f);
                imageView.setImageResource(R.drawable.usagi_maru);
                rightAnswerCount++;
            } else {
                soundPool.play(mp3b, 1f, 1f, 0, 0, 1f);
                imageView.setImageResource(R.drawable.usagi_batsu);
            }

            AlertDialog.Builder builder = new AlertDialog.Builder(this);

            builder.setView(imageView);
            builder.setMessage("こたえ :  " + rightAnswer);
            builder.setPositiveButton("つぎへ➡", new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface dialogInterface, int i){

                        if (quizCount == QUIZ_COUNT) {
                           
                            Intent intent = new Intent(getApplicationContext(), ResultActivity.class);
                            intent.putExtra("RIGHT_ANSWER_COUNT", rightAnswerCount);
                            startActivity(intent);
                            //タイムストップ
                            stopTimer();

                        } else {
                            quizCount++;
                            showNextQuiz();
                        }

                }

            });
            builder.setCancelable(false);
            builder.show();

        }



0

7Answer

スクリーンショット (664).png

知っていたらすいません。

上記 LogCatを選択しまして、

検索文字のところへ、Test_str
を入力しますと、
System.out.println の結果の出力が確認できます。

1Like

Comments

  1. @krtmi

    Questioner

    そちらで探せたのですね💦
    教えて頂きありがとうございますm(__)m

    xmlの表示画面ばかり気にして、LogCat使いこなせていませんでした。
  2. 最初はわからなくて当たり前ですよ。

    こちらこそ、値が取れず申し訳ないです。

    //==== ******** ここを戻す *********
    stopTimer();

    は、戻して試してと記載したのですが、戻さなくて大丈夫です。度々すいません!

  3. @krtmi

    Questioner

    めちゃくちゃ勉強になっています!!
    ご尽力頂きありがとうございます!
    UIスレッドで取得という方法もあるのですね。
    intent.putExtra("Test_str ", elapsedTime);
    に変更し、stopTimer();
    の位置も変えて試したのですが、
    どれも、ログは、 Test_str:::値:::nullと表示されてしまいます💦

・申し訳ないです。僕の記述ミスです(昨日は時間が無く急いでいたのでかなりの記述ミスやってます。すいません!)。
正しくは、下記をコピーしてください。
// ③
System.out.println("elapsedTimeの値" + String.valueOf(elapsedTime));
// String.valueOf で long型からStrin型にして、出力します。

// ④
System.out.println("clearTimeの値" + clearTime.getText().toString());
// clearTime.getText().toString() は clearTime(TextView)の中身の値をgetText().toString()で出力します。余談です***(String形)なので、この値を受け取る時の変数はString形で宣言してあげます。

1Like

Comments

  1. @krtmi

    Questioner

    とんでもないです。お忙しい中、教えて頂きありがとうございます!
    教えて頂いたコード入力し、実行できました!
    LogCat
    I/System.out: elapsedTimeの値28786
    I/System.out: clearTimeの値00:28.786
    と出ました!!値が取得できているようで嬉しいです。
    あとは、xmlに表示できればよいのですが(/・ω・)/
  2. 値が出力されて良かったです。

    後は値を渡しまして、とりあえず2つ追加してみてください。

    ① // 追記 intent.putExtra("RIGHT_ANSWER_COUNT", rightAnswerCount); のコードの下に追記してください。

    String Test_val_01 = String.valueOf(elapsedTime);
    intent.putExtra("Test_01", Test_val_01);

    String Test_val_02 = clearTime.getText().toString();
    intent.putExtra("Test_02", Test_val_02);


    //===== ここからは、ResultActivity.java へ記載

    if(getIntent() != null) {

    String Get_str_01 = getIntent().getStringExtra("Test_01");
    System.out.println("Get_str_01:::値:::" + Get_str_01);

    String Get_str_02 = getIntent().getStringExtra("Test_02");
    System.out.println("Get_str_02:::値:::" + Get_str_02);


    }else {
    System.out.println("Test_str:::値取得 NG");
    }

    -------
    上記のコードを入れて、ログを見て頂けると恐らく、「28786」の値は取れていると思いますので、javaの関数(StringBuilderや、charAtなどを使って※他にも色々なやり方があります。)を使って、文字列の間に:を入れて上げればOKです。

  3. @krtmi

    Questioner

    うわーーー!!!できました(≧▽≦)嬉しすぎます。
    System.out.printlnで値取得できたか、LogCatで確認し、値を受け取るなど、とても勉強になりました。初心者の私に丁寧に教えて頂き感謝しております。
    初質問で勇気がいりましたが、tokotoko33ok様にご回答頂けてよかったです。
    本当にありがとうございます。
    また機会がありましたら、宜しくお願いいたします!!<m(__)m>
  4. 値が出力できて良かったです👍

    僕もメッチャ嬉しいです^-^

    こちらこそ、また何かありましたらよろしくお願いします♪
.java

//*** 多分これでいけそうな気がします(できなかったら申し訳ありません!) *** !
private String Test_str;
//=== 変数は上で宣言します。

if (quizCount == QUIZ_COUNT) {
                           
                            Intent intent = new Intent(getApplicationContext(), ResultActivity.class);

// === エラーがでたら long型 or int型で(Test_str)試してみてください。
Test_str = clearTime.getText().toString()

                            intent.putExtra("RIGHT_ANSWER_COUNT", rightAnswerCount);

// === 追加
intent.putExtra("Test_str ", Test_str);

                            startActivity(intent);
                            //タイムストップ
                            stopTimer();

ResultActivity.java で値を受け取る

ResultActivity.java

private String Get_str

//=== 変数は上で宣言してください。
 if(getIntent() != null) {
           // 時間の値取得
            Get_str = getIntent().getStringExtra("Test_str");
            // Logcat 確認して、値が入っていれば TextView などに setTextしてあげる。
            System.out.prntln("Test_str:::" + Test_str)
}
0Like

Comments

  1. @krtmi

    Questioner

    ご回答ありがとうございます!嬉しいです!!
    早速コード入力し、エラーなども出ていないようなのですが、
    結果が表示されず、、、
    ちなみにLogcatには、
    I/System.out: Test_str:::com.google.android.material.textview.MaterialTextView{bdf935 V.ED..... ......ID 0,0-0,0 #7f08000e app:id/Test_str}
    と表示されます。
    これは、うまく経過時間取得できなかったということでしょうか?
        
  2. 前進できたようで良かったです。

    もし可能であれば、SabActivity.javaとxml , ResultActivity.java , xml を貼り付けて頂けますと確実な回答ができると思います。

    コードの貼り付けが難しいようでしたら、「SabActivity .java」に、

    ```SabActivity .java

    //*** 多分これでいけそうな気がします(できなかったら申し訳ありません!) *** !
    private String Test_str;
    //=== 変数は上で宣言します。

    if (quizCount == QUIZ_COUNT) {

    Intent intent = new Intent(getApplicationContext(), ResultActivity.class);

    //*** タイムストップ *** タイマーを止める。
    stopTimer();

    // === エラーがでたら long型 or int型で(Test_str)試してみてください。
    Test_str = clearTime.getText().toString()

    intent.putExtra("RIGHT_ANSWER_COUNT", rightAnswerCount);

    // === 追加
    intent.putExtra("Test_str ", Test_str);

    startActivity(intent);


    }


    ```

    //*** タイムストップ *** タイマーを止める。
    stopTimer();

    という箇所を入れ替えるとどうでしょうか?

    値取得のエラーが直らなくても、タイマーを止めるタイミングは上記の方が良いと思います。

    なにか、xmlにコンポーネントを追加されましてでしょうか?
    例えば
    idがTest_strのTextビューなど。もし追加されていればそこが原因の可能性が高いと思います。

    試してみたください。ざっくりとした回答で申し訳ないのですが、
    よろしくお願いします。





  3. @krtmi

    Questioner

    tokotoko33ok様(@tokotoko33ok様)
    分かりやすく教えて頂き、ご返信もありがとうございます!!
    stopTimer();の位置も変えてみました!
    private EdtText clearTime;も試し、
    【activity_result.xml】のandroid:text="00:00.000"というコードも違うのではないかと思うのですが、やはり、うまくいかず、無知ですみません。

    xmlなどのコードも貼り付けさせていただきます。
    ご教授いただけましたら幸いです。宜しくお願いいたします。

    ★【SabActivity.java】★
     public class SabActivity extends AppCompatActivity {

    TextView clearTime;
    Handler handler;
    Runnable runnable;
    long startTime,elapsedTime;

    private TextView countLabel;
    private TextView questionLabel;
    private Button answerBtn1;
    private Button answerBtn2;
    private Button answerBtn3;
    private Button answerBtn4;

    private String rightAnswer;
    private int rightAnswerCount;
    private int quizCount = 1;
    static final private int QUIZ_COUNT = 10;
    private String Test_str;


    ArrayList<ArrayList<String>> quizArray = new ArrayList<>();

    String[][] quizData = {
    // {"問題", "正解", "選択肢1", "選択肢2", "選択肢3"}

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_sab);

    //タイムスタート
    onTimer();

    clearTime = findViewById(R.id.text_clearTime);
    countLabel = findViewById(R.id.countLabel);
    questionLabel = findViewById(R.id.questionLabel);
    answerBtn1 = findViewById(R.id.answerBtn1);
    answerBtn2 = findViewById(R.id.answerBtn2);
    answerBtn3 = findViewById(R.id.answerBtn3);
    answerBtn4 = findViewById(R.id.answerBtn4);

    for (String[] quizDatum : quizData) {

    ArrayList<String> tmpArray = new ArrayList<>();

    tmpArray.add(quizDatum[0]); // 問題
    tmpArray.add(quizDatum[1]); // 正解
    tmpArray.add(quizDatum[2]); // 選択肢1
    tmpArray.add(quizDatum[3]); // 選択肢2
    tmpArray.add(quizDatum[4]); // 選択肢3
    quizArray.add(tmpArray);
    }
    showNextQuiz();
    }



    public void showNextQuiz() {
    countLabel.setText(getString(R.string.count_label, quizCount));
    Random random = new Random();
    int randomNum = random.nextInt(quizArray.size());
    ArrayList<String> quiz = quizArray.get(randomNum);
    questionLabel.setText(quiz.get(0));
    rightAnswer = quiz.get(1);
    quiz.remove(0);
    Collections.shuffle(quiz);

    answerBtn1.setText(quiz.get(0));
    answerBtn2.setText(quiz.get(1));
    answerBtn3.setText(quiz.get(2));
    answerBtn4.setText(quiz.get(3));
    quizArray.remove(randomNum);
    }
    //ストップウォッチ起動
    public void onTimer() {

    handler = new Handler();
    startTime = System.currentTimeMillis();
    runnable = new Runnable() {
    @Override
    public void run() {
    elapsedTime = System.currentTimeMillis() - startTime;
    SimpleDateFormat sdf = new SimpleDateFormat("mm:ss.SSS", Locale.US);
    clearTime.setText(sdf.format(elapsedTime));
    handler.removeCallbacks(runnable);
    handler.postDelayed(runnable, 10);
    }

    };
    handler.postDelayed(runnable,10);}
    public void stopTimer() {
    handler.removeCallbacks(runnable);



    public void checkAnswer(View view){
    ImageView imageView = new ImageView(this);
    Button answerBtn = findViewById(view.getId());
    String btnText = answerBtn.getText().toString();


    AlertDialog.Builder builder = new AlertDialog.Builder(this);

    builder.setView(imageView);
    builder.setMessage("こたえ :  " + rightAnswer);
    builder.setPositiveButton("つぎへ➡", new DialogInterface.OnClickListener() {




    @Override
    public void onClick(DialogInterface dialogInterface, int i){

    if (quizCount == QUIZ_COUNT) {
    Intent intent = new Intent(getApplicationContext(), ResultActivity.class);
    //タイムストップ
    stopTimer();
    Test_str = clearTime.getText().toString();

    intent.putExtra("RIGHT_ANSWER_COUNT", rightAnswerCount);
    intent.putExtra("Test_str ", Test_str);

    startActivity(intent);

    } else {
    quizCount++;
    showNextQuiz();
    }
    }

    });
    builder.setCancelable(false);
    builder.show();
    }





    ★【activity_sab.xml】★
    <TextView
    android:id="@+id/text_clearTime"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="00:00.000"
    android:textColor="#000000"
    android:textSize="24sp"
    android:textStyle="bold" />






    ★【ResultActivity.java】★
    public class ResultActivity extends AppCompatActivity {

    private String Get_str;
    public void returnTop(View view) {
    startActivity(new Intent(ResultActivity.this, MainActivity.class));
    }


    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_result);

    ImageView imageView1 = findViewById(R.id.image_view_1);

    TextView resultLabel = findViewById(R.id.resultLabel);
    TextView highScoreLabel = findViewById(R.id.highScoreLabel);
    TextView Test_str = findViewById(R.id.Test_str);

    if(getIntent() != null) {
    // 時間の値取得
    Get_str = getIntent().getStringExtra("Test_str");
    // Logcat 確認して、値が入っていれば TextView などに setTextしてあげる。
    System.out.println("Test_str:::" + Test_str);
    }

    int score = getIntent().getIntExtra("RIGHT_ANSWER_COUNT", 0);
    resultLabel.setText(getString(R.string.result_score, score*10));


    SharedPreferences sharedPreferences = getSharedPreferences("quizApp", MODE_PRIVATE);
    int highScore = sharedPreferences.getInt("HIGH_SCORE", 0);

    if (score > highScore) {

    highScoreLabel.setText(getString(R.string.result_high_score, score*10));
    SharedPreferences.Editor editor = sharedPreferences.edit();
    editor.putInt("HIGH_SCORE", score);
    editor.apply();
    } else {
    highScoreLabel.setText(getString(R.string.result_high_score,highScore*10));

    }





    ★【activity_result.xml】★
    <TextView
    android:id="@+id/Test_str"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="00:00.000"
    android:textColor="#000000"
    android:textSize="30sp"
    android:textStyle="bold" />





ソースありがとうございます。
わかりました。

①Get_strで、時間の値を受け取ります。

②受け取った値を(経過時間 Get_str)Test_strにセットして画面に表示します。

ResultActivity.java

public class ResultActivity extends AppCompatActivity {


// === *** ①-1 下記の変数でまずは、値を受け取ります。
private String Get_str;

public void returnTop(View view) {
startActivity(new Intent(ResultActivity.this, MainActivity.class));
}


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_result);

ImageView imageView1 = findViewById(R.id.image_view_1);

TextView resultLabel = findViewById(R.id.resultLabel);
TextView highScoreLabel = findViewById(R.id.highScoreLabel);
TextView Test_str = findViewById(R.id.Test_str);

if(getIntent() != null) {
// 時間の値取得

// === *** ①-1 下記の変数でまずは、値を受け取ります。
Get_str = getIntent().getStringExtra("Test_str");
// Logcat 確認して、値が入っていれば TextView などに setTextしてあげる。

//=============================
// System.out.println("Test_str:::" + Test_str);
System.out.println("Test_str:::" + Get_str); // === *********** 修正します。
//=============================

// === *** ②-1 下記の変数でまずは、値を受け取ります。(追加します。)
Test_str.setText(Get_str);

}

上記の修正で恐らく大丈夫かと思います。

変数で受け取って、表示はコンポーネント(TextViewなど)っていうイメージの流れを想像すれば良いと思います。

0Like

Comments

  1. @krtmi

    Questioner

    @tokotoko33ok様ありがとうございます!
    System.out.println("Test_str:::" + Get_str);を
    Test_str.setText(Get_str);に修正したのですが、
    今度は、00:00.000の表示も何も出ない状態となってしまいました。
    xmlの問題なのでしょうか、、、
  2. すいません、書き方が悪かったです。
    これで、出力結果、もしくはTest_strのText_Viewに
    なにも文字が入ってなかった、もしくは、「00:00.000」が出力されましたら、
    値が取れていないということになります。

    ※恐らく
    <<今度は、00:00.000の表示も何も出ない状態となってしまいました。
    から推測するに値が取れてなさそうな気がします。

    お手数ですが下記コードを一度試してみてください。


    //============================= 修正前のコード ここは貼り付けなくて大丈夫です。
    // コメントアウト System.out.println("Test_str:::" + Test_str); // === ****** 今までのコード

    //============================= ここから下をコピーして貼り付けてください。

    if(getIntent() != null) {

    Get_str = getIntent().getStringExtra("Test_str");
    System.out.println("Test_str:::値:::" + Get_str); // === *********** 修正します。
    //=============================

    // === *** ②-1 下記の変数でまずは、値を受け取ります。(追加します。)
    Test_str.setText(Get_str);

    }else {
    System.out.println("Test_str:::値取得 NG");
    }

  3. @krtmi

    Questioner

    失礼しました!! 
    System.out.println("Test_str:::値:::" + Get_str);はそのままですね!
    教えて頂いたものコピペし、実行しましたが、また、何も出ない状態ですm(__)m
  4. 全然大丈夫です。
    何もでませんか!?

    ログに、

    Test_str:::値::: もしくは

    Test_str:::値取得 NG

    が出力されていませんか。


  5. @krtmi

    Questioner

    ログの方には、
    I/System.out: Test_str:::値:::null
    と出ていました!!
  6. 失礼しました、値が取れていないみたいですね。
    「UIスレッドで取得」という方法があるのですが、実装方法が変わって面倒だと思いますので、

    public void run() {
    elapsedTime = System.currentTimeMillis() - startTime;

    部分の

    elapsedTime の値を取得しまして、「ResultActivity」側で、右の形式 00:00:00
    へ変換させるやり方でやってみたらどうでしょうか。

    とりあえず加工前のデータが取れるか下記コードで、試して頂いてもいいでしょうか。

    受け取る側のコードは変えなくても大丈夫です(ResultActivity.java


    if (quizCount == QUIZ_COUNT) {
       
                   //タイムストップ
    stopTimer();

    Intent intent = new Intent(getApplicationContext(), ResultActivity.class);



    intent.putExtra("RIGHT_ANSWER_COUNT", rightAnswerCount);

    // === *** elapsedTime に変更 
    intent.putExtra("Test_str ", elapsedTime);

    startActivity(intent);


    }



  7. 度々失礼します。

    上記のコードで値が入っていない場合、

    1つ前の修正コードへ戻して頂いて、 stopTimer();の位置を戻して頂いて試してもらってもいいですか。



    if (quizCount == QUIZ_COUNT) {

    Intent intent = new Intent(getApplicationContext(), ResultActivity.class);

    // === エラーがでたら long型 or int型で(Test_str)試してみてください。
    Test_str = clearTime.getText().toString()

    intent.putExtra("RIGHT_ANSWER_COUNT", rightAnswerCount);

    // === 追加
    intent.putExtra("Test_str ", Test_str);

    startActivity(intent);

    //==== ******** ここを戻す *********
    stopTimer();
    }

ソースをもう一度みてみたのですが、

checkAnswer()

の関数が使われていないようにみえるのですが、
画面遷移はされていますでしょうか?

0Like

Comments

  1. @krtmi

    Questioner

    失礼しました。
    public void checkAnswer(View view){
    ImageView imageView = new ImageView(this);
    Button answerBtn = findViewById(view.getId());
    String btnText = answerBtn.getText().toString();
    の後、
    if (btnText.equals(rightAnswer)) {
    imageView.setImageResource(R.drawable.usagi_maru);
    rightAnswerCount++;
    } else {
    imageView.setImageResource(R.drawable.usagi_batsu);
    }
    と記述しており、コピペ抜けておりましたm(__)m
    画面遷移は問題なくできております!
  2. ログの値がTest_str:::値:::nullでしたか。

    4か所追加してほしい箇所があるのですが、

    ① long startTime, elapsedTime; // の箇所を

    private long startTime, elapsedTime;

    ②TextView clearTime; // の箇所

    private TextView clearTime;



    残り二か所は、下記の if文内に

    // ===

    @Override
    public void onClick(DialogInterface dialogInterface, int i){

    if (quizCount == QUIZ_COUNT) {

    // ③ === 追加
    System.out.println("elapsedTimeの値" + startTime, elapsedTime;);

    // ④ === 追加
    System.out.println("clearTimeの値" + clearTime.clearTime.getText().toString());


    Intent intent = new Intent(getApplicationContext(), ResultActivity.class);
    intent.putExtra("RIGHT_ANSWER_COUNT", rightAnswerCount);
    startActivity(intent);
    //タイムストップ
    stopTimer();

    } else {
    quizCount++;
    showNextQuiz();
    }

    }

    //===

    実行して頂いて、catlogで、③と④の値を見て頂いてもいいでしょうか。
  3. @krtmi

    Questioner

    承知いたしました!
    入力してみたのですが、cleartime部分で、どうしてもエラーが出てしまします💦

Your answer might help someone💌