我在robovm中使用NSTimer,但它不起作用,我不知道为什么? 这是我的代码:
mTimer = NSTimer.create(1, new VoidBlock1<NSTimer>() {
@Override
public void invoke(NSTimer a) {
onUpdate();
System.out.println("onUpdate");
}
}, true);
但不会发生。
其他方式:
mTimer = NSTimer.create(1, this, Selector.register("onUpdate"), null, true);
@Method(selector = "onUpdate")
public void onUpdate(){
System.out.println("onUpdate");
}
也没有发生任何事情。和其他方式也不起作用
mTimer = NSTimer.create(1, this, Selector.register("onUpdate:"), null, true);
@Callback @BindSelector("onUpdate:")
public void onUpdate(Selector cmd){
System.out.println("onUpdate");
}
它也行不通。请帮帮我。
答案 0 :(得分:0)
我没有对此进行过测试,但是看看NSTimer.java似乎您可能在没有启动/触发它的情况下创建了一个计时器。
也许您可以尝试使用方法createScheduled():
mTimer = NSTimer.createScheduled(1, new VoidBlock1<NSTimer>() {
@Override
public void invoke(NSTimer a) {
onUpdate();
System.out.println("onUpdate");
}
}, true);
或者,如果你真的不需要它是NSTimer我建议使用java.util.Timer。这在Robovm应用程序中非常有用。