猿问

如果方法返回 true,则停止计时器

如果方法为真,有什么方法可以暂停天文钟。我创建了一个简单的拼图游戏并添加了一个计时器来显示经过的时间,我试图在解决难题时停止计时器。运行时,应用程序运行平稳,计时器滴答作响,但在游戏开始时不会停止解决了。任何形式的帮助将不胜感激。这是代码;


protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_menu);

    chronometer  = findViewById(R.id.chronometer);


    stopChronometer();

    startChronometer();

    isSolved();

}


public static boolean isSolved() {

    boolean solved = false;

    for (int i = 0; i < tileList.length; i++) {

        if (tileList[i].equals(String.valueOf(i))) {

            solved = true;

        } else {

            solved = false;

            break;

        }

    }

    return solved;

}

//to start the chronometer

public void startChronometer(){

    if(!running){

        chronometer.setBase(SystemClock.elapsedRealtime());

        chronometer.start();

        running = true;

    }

}

//to stop the chronometer

public void stopChronometer(){

    if(running && isSolved()){

        chronometer.stop();

        running =false;

    }

}


呼唤远方
浏览 150回答 2
2回答

BIG阳

public void stopChronometer() {&nbsp; &nbsp; if(running && isSolved()){&nbsp; &nbsp; &nbsp; &nbsp; chronometer.stop();&nbsp; &nbsp; &nbsp; &nbsp; running =false;&nbsp; &nbsp; }}改成public void stopChronometer(){&nbsp; &nbsp; if(running || isSolved()){&nbsp; &nbsp; &nbsp; &nbsp; chronometer.stop();&nbsp; &nbsp; &nbsp; &nbsp; running =false;&nbsp; &nbsp; }}或者您可以从 isSolved() 方法调用 stopChronometer() (不过您必须从 stopChronometer 中删除 isSolved() )。没有看到完整的代码,很难回答。

长风秋雁

我找到了解决方案 问题是我没有声明方法 start Chronometer(), chronomer 并以静态方式运行。不过还是谢谢你的帮助?
随时随地看视频慕课网APP

相关分类

Java
我要回答