swift相关内容
我有以下代码,它使用DispatchGroup在任务完成时收到通知: func getSomething(completion: ()->()) { completion() } func doSomeWork(completion: ()->()) { let myGroup: DispatchGroup = DispatchGroup() for _ in 0.
..
我使用SWIFT 3 GCD在代码中执行一些操作。但我经常收到_dispatch_call_block_and_release错误。我想这个错误背后的原因是因为不同的线程修改了相同的变量,但我不确定如何修复这个问题。以下是我的代码和解释: 我有一个变量可以在不同的线程中访问和修改: var queueMsgSent: Dictionary? = nil
..
我在后台线程上运行的类中使用DispatchGroup。有时,我需要更新UI,因此我调用以下代码: dispatchGroup.notify(queue: .main) { self.delegate?.moveTo(sender: self, location: location) self.delegate?.updateLabel(sender: self, item: sel
..
class SomeViewController: UIViewController { let semaphore = DispatchSemaphore(value: 1) deinit { semaphore.signal() // just in case? } func someLongAsyncTask() { sem
..
我正在尝试过滤API中的数据。已成功加载到具有表格视图单元格的视图控制器中。这是一个电影应用程序。我正在尝试根据用户在文本框中键入的内容来筛选数据。我在代码筛选器中提到了电影的标题,但代码只能筛选电影的标题和概述,但图像字段保持未筛选状态,如图像、概述等。这是结构模型。 import Foundation struct Movie: Decodable { let original
..
我正在尝试加载一个视图,就好像用户已经按下了UISearchBar。我希望SearchController在顶部加载UISearchBar以及取消按钮。 我试过了: func activateSearch(){ self.searchBarShouldBeginEditing(self.searchController.searchBar) self.w
..
我正在使用https://www.hackingwithswift.com/example-code/media/how-to-scan-a-qr-code提供的代码来制作我自己的扫描应用程序。但我喜欢在按下按钮时进行扫描。现在,我将教程中的viewDidLoad()部分放入它自己的函数中: func cameraScanningLayer(){ view.backgroundCol
..
我正在我的应用程序中创建二维码,我想知道是否可以添加第二个键-值对。现在我有一个12位数字的“inputMessage”键,我想要另一个键的一些其他数据。例如,使用另一个字符串作为名为“GORM”的新密钥。 以下是我创建二维码的函数: func generateCode() { let gymData = gymName.dataUsingEncoding(NSISOL
..
我正在构建一个UIView,它有一个覆盖的盒子,最终目标是让二维码读取器仅在二维码落入盒子内时触发。我知道我需要将.rectOfInterest()设置为与黄色框相同,但在当前实现中(下面的代码),阅读器无法工作。 public override init(frame: CGRect) { super.init(frame: frame) if let captureDev
..
我正在尝试生成中间有徽标的二维码:。 我使用的是我找到的代码here,我的代码是: func generateQrCode(message: String!) -> CIImage! { var data = message.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false) va
..
在SWIFT 4中检索和显示有关二维码的所有信息时遇到问题。 我使用了带有文本扩展名的二维码生成器,我在其中添加了 {"number":"+33688888888","amount":"50"} 在我的函数中调用和显示信息 func metadataOutput(_ output: AVCaptureMetadataOutput, didOutput metadataObj
..
我使用的是onChange(of:perform:)SwiftUI修饰符。然后我想要获得旧的值,将其与新的值进行比较。我看了文档,上面写着: 闭包可以捕获上一个值以将其与新值进行比较。 举例: .onChange(of: playState) { [playState] newState in model.playStateDidChange(from: playStat
..
我已使用Suite创建了UserDefaults self.moviesWatchedUserDefaults = UserDefaults(suiteName: "com.apple.tv.2020") 并将信息存储在plist中,如 self.moviesWatchedUserDefaults.set(data, forKey: key). 现在,在检索时,我想检索所有键和
..
我正在尝试使用UserDefaults永久保存布尔值。这是我的代码: public static var isOffline = UserDefaults.standard.bool(forKey: "isOffline") { didSet { print("Saving isOffline flag which is now (isOffline)")
..
有时,当我在SWIFT中使用选择器(即Selector类型)时,我为targetForAction(_:withSender:)或addTarget(_:action:)等方法的action参数提供的字符串文字不会调用或映射到我预期的实际SWIFT函数。 例如,当如下所示的MyResponder实例在响应器链中时,使用字符串showImage:调用targetForAction(_:with
..
我想在CBPeripheralDelegate中定义一个选择器,它是func peripheral(peripheral: CBPeripheral, didUpdateValueForCharacteristic characteristic: CBCharacteristic, error: NSError?)。 在swft3中,更名为peripheral(_: didUpdateVal
..
我正在尝试创建自定义警报,而我正试图在按钮上实现完成处理程序,这让我抓狂。我尝试了几种方法,最后一种是创建函数数组,以传入UIButton的选择器addTarget函数,但不起作用。(其中*是) 问题:“#selector的参数未引用@OBC方法、属性或初始值设定项” 我不能做的困难的编码部分是用我从我的视图控制器收到的一些代码来配置选择器,在那里我用下面的类创建一个对象。 cl
..
我正在尝试在我的应用程序模型中保留一个NSTmer,并在我的视图控制器文件中更新时间。为此,我创建了以下两个方法: func startTimer(labelToUpdate : UILabel) { timerGoing = true timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, select
..
文件上说: Declaration: class func perform(_ selector: Selector, onTarget target: Any) -> SKAction 选择器 要调用的方法的选择器。 我不确定什么是方法的选择器。这就是问题所在。 它看起来像是方法/函数的名称,但(在我心中)造成了不确定性,因为它从来没有被描述为这个名称,所以我
..
我正在我的SKScene中设置滑动识别,我发现对所有识别器进行硬编码需要时间,而且不是很整洁,所以我决定使用for循环,以及一个包含UISwipeRecognizer作为键、()作为值的字典。问题是,在尝试使用recognizer.addTarget(self, action: #selector(functionForRecognizer[recognizer]!)) 添加目标时,它在标题中显
..