处理程序不实时更新int

时间:2017-01-07 19:18:58

标签: java android

我正在尝试创建一个启动计时器的按钮(仅限秒)。无论何时按下,计时器都会重置为0并再次开始递增。这里我有一个处理程序,但它没有实时更新,它只在你点击按钮时更新。我错过了什么?

import itertools

listTags = [ "TOT" , "WBA", "BUR", "SOU", "HUL", "SUN", "STK", "SWA", "ARS", "CHE", "MUN", "WHU", "WAT", "MID", "WHU", "CRY", "LEI", "EVE", "MCI", "LIV"]

combinations = ['#' + x + y for x, y in itertools.combinations(listTags, 2)]

print(combinations)

2 个答案:

答案 0 :(得分:3)

  

它只在您单击按钮时更新。我错过了什么?

因为button.setText仅在点击Button时调用。在递增button.setText之前调用run()内的mSeconds

    public void run() {
        button.setText("Seconds since clicked: " + mSeconds);
        updateSec();
    }

并在button方法之外访问clickAsync方法在clickAsync方法之外声明它。

答案 1 :(得分:0)

您只需在setText()中使用clickAsync()更新按钮文字,但在处理程序可运行的任何方法中都不会更新。

考虑移动

button.setText("Seconds since clicked: " + mSeconds);

updateSec()内。