我有一个名为basicLayer的图层,我有一些路径需要在函数drawlayer中绘图:incontext, 所以我叫[basicLayer setneedsdisplay];这将调用drawlayer:incontext atomaticlly,但它没有直接调用drawlayer:incontextly,所以我的问题是我怎么能瞬间调用drawlayer:[basicLayer setneedsdisplay]之后的unstext;这耗费了我一小时的时间,请帮助我?
[basicLayer setNeedsLayout];
[NSThread sleepForTimeInterval:1.0];
我需要绘制一些路径,然后睡1秒钟。
答案 0 :(得分:0)
不要这样做!调用sleepForTimeInterval:
通常不是一个好主意。特别是在主线程上(我假设你是),这是一个绝对的禁忌,因为你正在以这种方式阻止整个UI。
如果您需要等待一秒钟,请执行performSelector:withObject:afterDelay
(或与Grand Central Dispatch等效通话)之类的操作。致setNeedsLayout
的呼吁很好。