Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Multithreading 如何在VC.m尝试加载之前保存使用drawRect绘制的图像?_Multithreading_Image_Load_Save - Fatal编程技术网

Multithreading 如何在VC.m尝试加载之前保存使用drawRect绘制的图像?

Multithreading 如何在VC.m尝试加载之前保存使用drawRect绘制的图像?,multithreading,image,load,save,Multithreading,Image,Load,Save,感谢所有的帮助,这个网站已经帮助回答了许多问题 我在UIView的子类中重写了drawRect,绘制了一组图像并将它们保存为PNG 接下来,我将尝试加载图像以在ViewController.m中使用 终于让动画工作起来了,但在Draw2D保存图像之前,VC会尝试加载这些图像。发现NSLog可以很好地查看事件顺序: if ([self loadNamedImage:nameToLoad]) { [image2set addObject:[self loadNamedImage:nameToLoad

感谢所有的帮助,这个网站已经帮助回答了许多问题

我在UIView的子类中重写了drawRect,绘制了一组图像并将它们保存为PNG

接下来,我将尝试加载图像以在ViewController.m中使用

终于让动画工作起来了,但在Draw2D保存图像之前,VC会尝试加载这些图像。发现NSLog可以很好地查看事件顺序:

if ([self loadNamedImage:nameToLoad]) {
[image2set addObject:[self loadNamedImage:nameToLoad]];
NSLog(@"Loaded %@", nameToLoad8); }
loadNamedImage是返回加载的图像的方法。添加if/exist似乎在一段时间内解决了这个问题,但我想正确地使用

performSelectorOnMainThread:withObject:waitUntilDone:;

// where to place command, which object, etc? 
尝试在VC中使用sleep语句,希望在尝试加载图像之前使用睡眠时间保存图像。。如何调整程序启动顺序,使其充分发挥作用


dBC发现使用ViewDidAspect和viewDidLoad解决了我的问题一段时间

最近开始使用手势并按照建议重置模拟器设置,以修复查找所需文件的问题。现在图像将不会再次加载,因为viewDidAppear会在重写DrawRect方法绘制图片之前尝试加载图片。尝试了不同的还原点,清理了项目,并从模拟器中卸载了应用程序,但均无效:o(

非常感谢在何处以及如何实现addDependency、GCD或其他解决方案的示例