我有一个带96个插槽的滑块,我需要在60秒内将滑块逐步从0移动到95。我应该用间隔(60/96)和96次重复使用NSTimer,还是有更好的解决方案?在一定时间内移动滑块
1
A
回答
1
这可能是最好的方法。 NSTimer
应该在该时间间隔内表现得相当一致,当它每1/10秒或更快地调用它时,它开始变得不可靠。
然而,如果稍微解释一下它并不完全表现为你会希望:
这不会是完美的,因为NSTimer
没有它的Tick事件字面上每间隔。相反,NSTimer
处于其线程运行循环的摆布之中,直到它的时间间隔到期后才能调用@selector
方法。然后将它与调用屏幕更新并不是锁定步骤相结合。
它的准确性主要取决于你在运行循环中做了些什么......如果你的设备的小脑中没有太多的事情发生,那么你的滑块应该像你希望的那样移动。
编辑:你也可以考虑一个更长间隔的NSTimer,并使用UIView的animateWithDuration ...方法使它看起来平滑吗?
1
aTimer = [NSTimer timerWithTimeInterval:(1.0) target:self selector:@selector(timerFired:) userInfo:nil repeats:YES];
NSRunLoop *runner = [NSRunLoop currentRunLoop];
[runner addTimer:aTimer forMode: NSDefaultRunLoopMode];
- (void)timerFired:(NSTimer*)theTimer {
slider.maximumValue=totaltime;
if(slider.value ==totaltime)
{
[theTimer invalidate];
//terminate the loop
}
else
{
slider.value=slider.value+1;
}
}
//timer runs continuously run if condition is true
相关问题
- 1. 滑块内的滑动滑块
- 2. (Swift,EarlGrey)将滑块移动到中间
- 3. bxSlider - 移动滑块内的控件
- 4. 用滑块移动更改滑块值
- 5. 如何在移动视频时移动滑块
- 6. Jquery滑块,滑动鼠标移动
- 7. Jquery滑块:同时移动2个滑块
- 8. 如何删除滑动滑块默认滑动时间?
- 9. 的Javascript滑块滑动想疯了一段时间
- 10. JQuery滑块移动文本
- 11. 使用jQuery移动滑块
- 12. 移动设备滑块
- 13. JQuery UI滑块知道滑块正在移动的方式
- 14. 革命滑块不滑动移动 - 移动触摸滑动不起作用
- 15. 在jQuery的移动全宽滑块?
- 16. 引导旋转木马滑块 - 只移动滑块,没有过多的内容
- 17. 滑动滑块内的背景图像
- 18. jQuery的内容滑块滑动
- 19. iMac内部灵敏的滑动滑块
- 20. 滑动滑块追加滑块内的点
- 21. 滑块控制不会自动移动?
- 22. jquery移动滑块不断运动
- 23. 在单击事件(滑动滑块)上滑动滑块
- 24. JQuery UI滑块的时间
- 25. jQuery时间轴滑块
- 26. 从滑块显示时间
- 27. 设计时间滑块
- 28. 在特定时间内将对象移动指定的距离
- 29. jQuery - 一个页面上的多个内容滑块,一次只移动一个
- 30. 自定义滑块偏移定位
NSTimer没有'isinValid'方法。 – Rengers 2012-08-31 13:49:42