如何在android中暂停倒计时?

如何在android中暂停倒计时?,android,Android,在我的应用程序中,我保留了暂停按钮和开始按钮默认情况下,我将计时器设置为50秒。当计时器运行时,我为每个按钮编写了onclick操作代码……即,单击“暂停”按钮时,时间暂停,再次单击“开始”按钮时,时间再次从50秒开始但它应该从暂停的时间开始。我该怎么做 请帮帮我……提前谢谢 我的代码: long timervalue = 50000; btn13 = (ImageView) findViewById(R.id.pause); btn14 = (ImageView) findViewById(

在我的应用程序中,我保留了暂停按钮和开始按钮默认情况下,我将计时器设置为50秒。当计时器运行时,我为每个按钮编写了onclick操作代码……即,单击“暂停”按钮时,时间暂停,再次单击“开始”按钮时,时间再次从50秒开始但它应该从暂停的时间开始。我该怎么做

请帮帮我……提前谢谢

我的代码:

long timervalue = 50000;

btn13 = (ImageView) findViewById(R.id.pause);
btn14 = (ImageView) findViewById(R.id.resume);

final CountDownTimer Counter1 = new CountDownTimer(timervalue, 1000) {
        public void onTick(long millisUntilFinished) {
            time.setText(formatTime(millisUntilFinished));

            btn13.setOnClickListener(new View.OnClickListener() 
            {
                public void onClick(View v)
                {  
                    Counter1.cancel();
                }

     });
            btn14.setOnClickListener(new View.OnClickListener() 
            {
                public void onClick(View v)
                {  

                    Counter1.start();

                }

     });

        }
public void onFinish()
 {
    Counter1.cancel();
}
};



public String formatTime(long millis) {
        String output = "00:00";
        long seconds = millis / 1000;
        // long minutes = seconds / 60;

        seconds = seconds % 60;
        // minutes = minutes % 60;

        String secondsD = String.valueOf(seconds);
        // String minutesD = String.valueOf(minutes);

        if (seconds < 10)
            secondsD = "0" + seconds;
        // if (minutes < 10)
        // minutesD = "0" + minutes;

        output = secondsD;
        return output;
    }
long-timervalue=50000;
btn13=(图像视图)findViewById(R.id.pause);
btn14=(ImageView)findViewById(R.id.resume);
最终倒计时计数器1=新倒计时(timervalue,1000){
公共void onTick(长毫秒未完成){
time.setText(formatTime(millisuntillfinished));
btn13.setOnClickListener(新视图.OnClickListener()
{
公共void onClick(视图v)
{  
计数器1.取消();
}
});
btn14.setOnClickListener(新视图.OnClickListener()
{
公共void onClick(视图v)
{  
计数器1.start();
}
});
}
公共无效onFinish()
{
计数器1.取消();
}
};
公共字符串格式化时间(长毫秒){
字符串输出=“00:00”;
长秒=毫秒/1000;
//长分钟=秒/60;
秒=秒%60;
//分钟=分钟%60;
String secondsD=String.valueOf(秒);
//String minutesD=String.valueOf(分钟);
如果(秒<10)
secondsD=“0”+秒;
//如果(分钟<10)
//分钟数d=“0”+分钟;
输出=秒SD;
返回输出;
}

不幸的是,您不能暂停倒计时,但还有其他方法可以完成您想做的事情

试试这个:

public class HelloWorldActivity extends Activity {
    /** Called when the activity is first created. */
    private CountDownTimer ct;
    private long ts = 30;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        final TextView mTextField = (TextView) this.findViewById(R.id.txt);
        final Button bt = (Button) this.findViewById(R.id.bt);

         bt.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                if(bt.getText().toString().equals("Start")){
                    bt.setText("Stop");
                     ct =  new CountDownTimer(ts*1000, 1000) {

                            public void onTick(long millisUntilFinished) {
                                mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
                                ts = millisUntilFinished/1000;
                            }

                            public void onFinish() {
                                mTextField.setText("done!");
                            }
                         }.start();
                }
                else{
                    bt.setText("Start");
                    ct.cancel();}
            }
        });
   }
}

我是WP7开发人员,但这肯定会帮助您发布代码片段,因此,我们可以查看它,并根据您的代码向您提出一些建议。>请参考此链接嗨,我编辑了我的代码。.请浏览一次,帮助我完成该任务…将非常感谢嗨,感谢您的回复。.我尝试了您的代码,但在ct行显示错误。取消();。。。。我还编辑了我的代码…请检查一下。。。