我正在尝试创建一个NSTimerin Swift但我遇到了一些麻烦.
NSTimer(timeInterval: 1, target: self, selector: test(), userInfo: nil, repeats: true)
Run Code Online (Sandbox Code Playgroud)
test() 是同一个类中的函数.
我在编辑器中收到错误:
找不到接受提供的参数的'init'的重载
当我改变selector: test()到selector: nil错误消失.
我试过了:
selector: test()selector: testselector: Selector(test())但没有任何作用,我在参考文献中找不到解决方案.
我有一个UITableView. 当一个单元格被点击时,我的应用程序会生成一个相关的图像。图像生成是在后台线程上完成的,因为有些图像需要相当长的时间来渲染。渲染图像后,UIImageWriteToSavedPhotosAlbum在主线程上调用。
由于任何数量的UIImageWriteToSavedPhotosAlbum任务可能以任何顺序进行,我需要一种方法来跟踪每个任务。我希望indexPath将所选单元格的存储为contextInfo,将其传递给UIImageWriteToSavedPhotosAlbum.
当image:didFinishSavingWithError:contextInfo:被调用时,我需要从 contextInfo 中获取 indexPath。
但是,绝大多数在线示例UIImageWriteToSavedPhotosAlbum通过 nil for contextInfo.
我已经阅读了官方文档、Swift 3 指针迁移指南、头文件、使用桥接和强制转换的 Objective-C 代码,以及许多关于UnsafeMutableRawPointer/主题的 SO 线程UnsafeRawPointer。
最终结果:我被无数的选择弄糊涂了,不知道我是否遗漏了一些明显的东西,我是否应该load()在指针数据上执行,应该调用unsafeBitCast(),还是应该将山羊献给众神。
或者,重新评估我的职业生涯,成为一名木匠。
一季度。如何IndexPath以适合 contextInfo 的形式存储 的实例?
Q2。一旦image:didFinishSavingWithError:contextInfo被调用,我如何形成一个IndexPathout of contextInfo,以便获取我存储的数据?谢谢你。