草庐IT

Self-Supervised

全部标签

ios - 属性 'self.*' 未在 super.init 调用时初始化

我刚刚将我的xcode更新到6.3.1。问题是我从Swift1.2开始收到这个奇怪的错误消息。我收到了这种错误信息/Users/MNurdin/Documents/iOS/xxxxx/Library/SideBar.swift:32:15:Property'self.originView'notinitializedatsuper.initcall/Users/MNurdin/Documents/iOS/xxxxx/Library/SideBar.swift:38:20:Immutablevalue'self.originView'mayonlybeinitializedonce关于这

swift - 非最终类中的方法必须返回 `Self` 以符合协议(protocol)

在协议(protocol)扩展中实现返回Self的静态协议(protocol)函数时,在扩展中函数的实现中出现错误(显示没有上下文的最小简化场景):importFoundationprotocolP{staticfuncf()->Selfstaticfuncg()->Self}extensionP{staticfuncf()->Self{//Method'f()'innon-finalclass'NSData'mustreturn`Self`toconformtoprotocol'P'returng()}}extensionNSData:P{staticfuncg()->Self{re

swift - 非最终类中的方法必须返回 `Self` 以符合协议(protocol)

在协议(protocol)扩展中实现返回Self的静态协议(protocol)函数时,在扩展中函数的实现中出现错误(显示没有上下文的最小简化场景):importFoundationprotocolP{staticfuncf()->Selfstaticfuncg()->Self}extensionP{staticfuncf()->Self{//Method'f()'innon-finalclass'NSData'mustreturn`Self`toconformtoprotocol'P'returng()}}extensionNSData:P{staticfuncg()->Self{re

swift - 为什么闭包在 Swift 3 中默认都是非转义的而需要显式的 `self`?

我注意到在Swift2.2中,使用@noescape标记为非转义的闭包不需要显式的self。在Swift3中,默认情况下所有闭包都是非转义的,现在如果您希望它们能够转义,则需要使用@escaping标记它们。鉴于默认情况下Swift3中的所有闭包都是非转义的,为什么它们需要显式的self?finalclassSomeViewController:NSViewController{varsomeClosure:()->()={_in}overridefuncviewDidLoad(){super.viewDidLoad()someClosure={view.layer=CALayer()

swift - 为什么闭包在 Swift 3 中默认都是非转义的而需要显式的 `self`?

我注意到在Swift2.2中,使用@noescape标记为非转义的闭包不需要显式的self。在Swift3中,默认情况下所有闭包都是非转义的,现在如果您希望它们能够转义,则需要使用@escaping标记它们。鉴于默认情况下Swift3中的所有闭包都是非转义的,为什么它们需要显式的self?finalclassSomeViewController:NSViewController{varsomeClosure:()->()={_in}overridefuncviewDidLoad(){super.viewDidLoad()someClosure={view.layer=CALayer()

swift - 协议(protocol)扩展中的 'where self' 是什么

我看到了很多格式如下的例子extensionProtocolnamewhereSelf:UIViewController协议(protocol)扩展中的whereSelf是什么。我找不到这方面的文档。 最佳答案 语法是:https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/Protocols.html#//apple_ref/doc/uid/TP40014097-CH25-ID521考

swift - 协议(protocol)扩展中的 'where self' 是什么

我看到了很多格式如下的例子extensionProtocolnamewhereSelf:UIViewController协议(protocol)扩展中的whereSelf是什么。我找不到这方面的文档。 最佳答案 语法是:https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/Protocols.html#//apple_ref/doc/uid/TP40014097-CH25-ID521考

swift - 在初始化所有存储的属性之前使用“self”

我正在处理learn-swiftplayground并在学习语言时将其升级到Swift2.0。以下代码(可能适用于Swift的早期版本)现在会生成两个错误:“在初始化所有存储的属性之前使用了‘self’”和“在初始化之前使用了常量‘self.capitalCity’”classCountry{letname:StringletcapitalCity:City!init(name:String,capitalName:String){self.name=nameself.capitalCity=City(name:capitalName,country:self)}}classCity{

swift - 在初始化所有存储的属性之前使用“self”

我正在处理learn-swiftplayground并在学习语言时将其升级到Swift2.0。以下代码(可能适用于Swift的早期版本)现在会生成两个错误:“在初始化所有存储的属性之前使用了‘self’”和“在初始化之前使用了常量‘self.capitalCity’”classCountry{letname:StringletcapitalCity:City!init(name:String,capitalName:String){self.name=nameself.capitalCity=City(name:capitalName,country:self)}}classCity{

swift - RXSwift 闭包中的“[weak self]”

我需要在RXSwiftsubscribeNext闭包中使用[weakself]吗?我有代码:searchController.searchBar.rx_text.throttle(0.2,scheduler:MainScheduler.instance).subscribeNext{searchTextinself.viewModel.searchForLocation(searchText)}.addDisposableTo(DisposelBag.sharedDisposelBag.disposeBag)我是否需要修改它以便在闭包的开头有一个[weakself]捕获列表?像这样:s