proper way to change a timer while running?

I have a 1 minute timer running, and at times want to change it to 1 second, and then back to 1 minute (hint! think "low power mode" in a watch-app)

When I first create the timer, it's every minute, but based on a "gesture" (screen tap in this case), I want to call for "onTimer()" every second. This code in an a conditional that only is true when things change...)
if(showSeconds) {
timer.stop;
timer.start( method(:onTimer), 1000, true );
} else {
timer.stop;
timer.start( method(:onTimer), 1000*60, true );
}



However, I get a "too many timers" error in the simulator on the first switch! It "kind of" works if I don't do the timer.stop() (only errors out after two switches...)

Simply put, how do I change the "time" value in a timer?
  • Jim - thanks to your suggestion about this last month, we already have a task on the books to include something like onGesture() in the InputDelegate. :) It looks like this falls within our 2.x.x release timeline, so this kind of feature should be available perhaps the middle of next year (just don't quote me on that).
  • Thanks for the info Brandon - for now, on the va I just use a screen tap to drop out of "low power mode", and then go back to low power after 20 seconds.. Having something like "onGesture" in 2.x.x would be great!