java - 倒数计时器安卓

标签 java android countdowntimer

大家好,我正在构建一个足球预测应用程序,我想显示比赛时间的倒计时。游戏开始后,我调用另一个函数,但无法正确倒计时。

以下是尝试过的方法:

public void onSuccess(String response) {
    try {
        JSONObject json = new JSONObject(response);
        userid.setText("Welcome: "+ usermail);
        hometeam.setText(json.getString("Home_Team"));
        awayteam.setText(json.getString("Away_Team"));
        home_logo.setImageUrl(url+json.getString("Home_Logo"));
        away_logo.setImageUrl(url+json.getString("Away_Logo"));
        game_id.setText(json.getString("ID"));
        match_date.setText(json.getString("Date")+" "+json.getString("Time"));

        //month.setText(json.getInt(name))
        SimpleDateFormat mdate = new SimpleDateFormat("yyyy-MM-dd");
        Date m_date= (Date) match_date.getText();
        CountDownTimer cdt = new CountDownTimer(m_date.getTime(), 1000) {

            public void onTick(long millisUntilFinished) {
                // TODO Auto-generated method stub
                Log.d("tick","clocks ticks");
            }

            public void onFinish() {
                // TODO Auto-generated method stub

            }
        }.start();  
    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

但是一旦我运行该应用程序,它就会崩溃。在我添加倒计时功能之前它工作得很好。日期和时间以这种格式返回。 “2013-12-23 20:00:00”。谢谢。

最佳答案

如果没有 Logcat,我无法判断是否存在多个错误,或者到底发生了什么。

From the documentation

getTime();

返回一个Long,即自上一个 Unix 纪元(1970 年 1 月 1 日)以来的毫秒数。这将是一个很大的数字,例如 1387233645 等。

See here for Wikipedia article on Unix Time

CountdownTimer 的构造函数采用以下形式

CountDownTimer(长 millisInFuture,长 countDownInterval)

getTime() 返回自 1970 年 1 月 1 日以来的毫秒数,而不是 future 的毫秒数。

例如,尝试使用默认值的 30 秒计时器: Also from Docs

new CountDownTimer(30000, 1000) {       
   public void onTick(long millisUntilFinished) {          
   mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);      
}       

public void onFinish() {         
   mTextField.setText("done!");    
}   
}.start();  

关于java - 倒数计时器安卓,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20658004/

相关文章:

java - 如何设置倒计时时间格式

php - 带 php session 的倒数计时器

android - 倒数计时器通知

java - 连接在远程 IP 上被拒绝,但在本地 IP 上被接受

java - oracle.sql.ARRAY 和 oracle.sql.ArrayDescriptor 的通用实现

java - AudioTrack 未播放完整缓冲区

android - 以编程方式卸载android应用程序

android - 如何将图像放在另一个 ImageView (已经是一组图像)上并将其保存为组合图像?

java - 在 swing 中向现有表添加一列

java - 使用嵌入式 Derby 数据库部署 Java 应用程序