单击主页/后退按钮的android进度条

时间:2011-11-03 03:32:32

标签: java android android-progressbar

我在我的小游戏中实现了进度条,如下所示

    gameProgressBar =(ProgressBar)findViewById(R.id.GameProcess);

    thrd = new Thread(progressBarThread);
    thrd.start();

}

//Progress bar function
private Runnable progressBarThread = new Runnable(){

    public void run() {
        // TODO Auto-generated method stub
        while (GameProgressCount<60){  //60 = 1 minute
            try{
                myHandle.sendMessage(myHandle.obtainMessage());
                Thread.sleep(1000);

            }
            catch(Throwable t){
            }
        }
        thrd.stop();
    }

    Handler myHandle = new Handler(){

        @Override
        public void handleMessage(Message msg) {

                GameProgressCount++;
                gameProgressBar.setProgress(GameProgressCount);
        }
    };

我的问题是,当我点击设备的后退/主页按钮时,应用程序将被最小化(或进入上一屏幕),但进度条线程将在后台运行。是否可以暂停线程并在最小化/打开应用程序屏幕时恢复。

由于

1 个答案:

答案 0 :(得分:2)

您可以在Activity的OnPause方法中暂停Thread,并且可以恢复活动的Thread on OnResume方法,该方法非常直接。现在,如果你想保持GameProgressCount完整并希望从它离开的地方恢复,那么你可以使用SharedPreference存储值,当你恢复使用相同的值开始时。