草庐IT

objective-c - NSRunLoop 在模拟器上工作正常,崩溃 iDevice

我正在开发一个iOS应用程序(FW:5.0+&ARC),它需要逐秒更新。目前,我在一个方法中有这个(当-ViewDidLoad时在performSelector中调用):-(void)FireOnload{counter=[NSTimertimerWithTimeInterval:1.0target:selfselector:@selector(countDownTime)userInfo:nilrepeats:YES];[counterfire];[[NSRunLoopmainRunLoop]addTimer:counterforMode:NSDefaultRunLoopMode];

iphone - 在 NSTimer 上重新加载 TableView 部分

我正在重新加载我计划在0.05秒内的NSTimer上的特定TableView部分。我在该部分单元格中有一个按钮但是一旦计时器启动,我将无法获得按钮单击事件。请帮助我:)提前致谢 最佳答案 你不能按下按钮的原因是因为你不断地重新加载tableView,所以当你按下它时按钮会重新初始化。有两种解决方案(一种更适合您,但如果没有看到您的代码,我无法判断是哪种)。解决方案A:不在tableview上调用reloadData,只更新单元格中的标签。解决方案B:重用您的UITableViewCells并仅在需要时初始化按钮,而不是在每次relo

ios - 对于通过 scheduledTimerWithTimeInterval 分配的 NSTimer 属性,应该使用什么保留策略?

我正准备将NSTimer属性添加到我的一个类中,以便在必要时/如果需要可以将其取消。我打算将它与+scheduledTimerWithTimeInterval一起使用:我应该使用strong、assign、copy还是unsafe_unretained?(使用ARC)。 最佳答案 为此使用strong。通常,您还希望像这样覆盖setter:-(void)setTimer:(NSTimer*)aTimer{if(aTimer!=_timer){[_timerinvalidate];_timer=aTimer;}}这样,当您更改或清除(

objective-c - 执行 UIGesture 操作时,NSTimer 暂停了一段时间

NSTimer暂停一段时间,然后在执行UIGesture操作时再次启动。我正在开发一个iOS应用程序,我必须每0.5秒重复触发一次NSTimer,并根据该计时器移动歌曲进度条。当用户触摸我保存在同一View中的某些图像时,还会处理触摸事件。我看到当用户触摸图像时,移动进度条的计时器会停止一会儿然后再次继续。是否存在无法在同一个View中同时处理定时器和触摸事件的问题?我的定时器代码myTimer=[NSTimerscheduledTimerWithTimeInterval:timeintervaltarget:selfselector:@selector(updatplayer:)us

ios - NSTimer 增长数据量

我在Instruments中观察我的应用程序以降低内存使用量和内存增长。我发现了一件奇怪的事情。当我以一定间隔(在我的例子中是0.1秒)启动NSTimer时,在Instruments中我可以看到CFArray(store-deque)和CFArray(mutable-variable)仍在增长(大约每秒200字节)。那样行吗?还是有问题?#Living数量不变,#Transitory和#Overall增长。此外整体内存仍然更大。对我来说,有很多事情都在阴影中。像Malloc32Bytes,Malloc48Bytes...当然,在计时器“tick”时调用的方法是空的,以确保不是我...我

ios - Label 和 NSTimer 阴影设计

我是iOS的初学者,需要一些线索来做一些感觉不太容易做的事情......我必须更改我的计时器设计(耗时和剩余时间),看起来像这样:对于看起来像这样的东西:你能给我任何线索吗(除了我已经知道的阴影颜色和偏移属性)?我现在的主要猜测是:如何区分这两种状态:没有时间时为灰色,有时间时为蓝色。提前致谢! 最佳答案 您是iOS开发的新手,所以我不确定将一些第3方框架扔到您头上是否是个好主意!但无论如何,看看TTTAttributetLabel.我不是UILabel的直接替代品,它允许您以不同的方式设置UILabel文本部分的样式,因此它可以满

ios - 响应 uibutton 的 NSTimer

所以,问题来了。我正在尝试为我的游戏制作一个计时器,但它似乎没有运行。我首先为nstimer创建了一个属性:@property(nonatomic)NSTimergameTimer;并合成它:@synthesizegameTimer=_gameTimer;然后我用这个方法来设置:-(NSTimer*)gameTimer{if(_gameTimer==nil)_gameTimer=[[NSTimeralloc]init];return_gameTimer;}然而,当我尝试通过uibutton启动计时器时:-(IBAction)play:(UIButton*)sender{_levelNu

ios - 如何暂停/恢复 NSTIMER?

这个问题在这里已经有了答案:HowtoPause/PlayNSTimer?(6个答案)关闭9年前。我是这样使用NSTimer的GameTimer=[NSTimerscheduledTimerWithTimeInterval:60.0/60.0target:selfselector:@selector(Move)userInfo:nilrepeats:YES];在Move方法中,我更新了View的位置。-(void)Move{CGRectOldPosition=self.JumbleWordView.frame;CGRectNewPosition=CGRectMake(OldPositi

ios - 在 Objective-C 中是否有可能在运行时找到分配的对象?

我想停止从静态库内部分配的NSTimer,因此我没有对所述对象的引用。但我知道它在那里,因为我可以在Instruments中看到分配。有没有办法在运行时获取所有计时器的引用。或者是否可以获取运行循环的所有预定计时器? 最佳答案 这是不可能的。Instruments通过使用记录所有对象分配和解除分配的Hook来检测运行时。虽然您可以创建类似的机制,但它在调试之外没有用处。首先,它会产生很大的开销。明显的开销。其次,您无法安全地使用这些信息做任何事情,因为您可能会对导致崩溃或未定义行为的实现做出任何假设。

ios - 为什么对象在 NSTimer 失效后重置?

我有一个NSTimer调用一个函数来移动一些UIImageView,当我使NSTimer无效时,我认为UIImageView会停在它们的位置,但它们会重置到StoryBoard设置的位置。我做错了什么或没有包括在内还是这是一个谜?编辑-添加了一些代码.hNSTimer*updater;.mupdater=[NSTimerscheduledTimerWithTimeInterval:1.0f/32.0ftarget:selfselector:@selector(gameEngine)userInfo:nilrepeats:YES];-(void)gameEngine{//movesome