草庐IT

self-referencing

全部标签

ios - json.swift 错误是 Self.init 未在委托(delegate)初始化程序的所有路径上调用

enterimagedescriptionhere错误如照片在json.swift中出来我不知道怎么解决。请帮帮我‍publicconvenienceinit(nsurl:NSURL){varenc:NSStringEncoding=NSUTF8StringEncodingleterr:NSError?do{letstr:String?=tryNSString(contentsOfURL:nsurl,encoding:NSUTF8StringEncoding)asString//print(str)self.init(nsurl:nsurl)}catchleterrorasNSErro

Swift 省略 .self 来调用需要元类型的函数?

这是我写的代码:funcprintType(one:T.Type){print(one)}funcprintType2(one:T.Type,name:String){print(one)}printType(Set)printType2(Set.self,name:"name")我想知道为什么printType(Set)能行得通。而在printType2(Set.self,name:"name"),我不能遗漏.self来让它工作。编辑:我想知道什么时候可以省略.self.我曾试图在Apple官方引用资料中找到它,但没有找到。编辑:我在Xcode版本7.1(7B91b)中测试代码。

ios - SWIFT:静态方法中的协议(protocol)功能在 "self"上不可见

我有一个问题要解决。这是需要工作的代码:classA:NSObject,RowConvertible{///Initializesarecordfrom`row`.//////Forperformancereasons,therowargumentmaybereusedduringthe///iterationofafetchquery.Ifyouwanttokeeptherowforlateruse,///makesuretostoreacopy:`self.row=row.copy()`.publicrequiredinit(row:Row){print(row)}}extensi

closures - 为什么闭包中的 "unowned self"在 Swift 中不能正常工作?

Apple的Swift语言官方指南中的代码如下:classHTMLElement{letname:Stringlettext:String?@lazyvarasHTML:()->String={[unownedself]iniflettext=self.text{return"\(text)"}else{return""}}init(name:String,text:String?=nil){self.name=nameself.text=text}deinit{println("\(name)isbeingdeinitialized.")}}在闭包中使用带有unowned的捕获列表来

swift - 核心动画,self.presentationLayer() 为 nil

我有一个快速的自定义CALayer,它有一些动态(实际上是@NSManaged属性)我已经正确设置了所有内容并且正在调用图层actionForKey。overridepublicfuncactionForKey(key:String!)->CAAction!{switchkey{case"maxCircles","numCircles":letanimation=CABasicAnimation(keyPath:key)animation.timingFunction=CAMediaTimingFunction(name:kCAMediaTimingFunctionLinear);an

ios - Swift:Mirror(reflecting: self) 太慢了?

我正在尝试用我的一个类的属性制作一本字典。classSomeClass(){varsomeString="Hello,stackoverflow"varsomeInt=42//Theanswertolife,theuniverseandeverythingvarsomeBool=truefuncobjectToDict()->[String:String]{vardict=[String:String]()letreflection=Mirror(reflecting:self)forchildinreflection.children{ifletkey=child.label{dic

ios - '不能在属性初始值设定项中使用实例成员 ‘allEvents’;属性初始值设定项在 ‘self’ 可用之前运行’错误

varallEvents:[String]=["SOUTHERNSTATESPASSLAWSTODISENFRANCISEBLACKS","THEODOREROOSEVELTELECTEDVICEPRESIDENT","WRIGHTBROTHERSFIRSTFLIGHT","SANFRANCISCOEARTHQUAKE","FORDINTRODUCESMODELT","WORLDWARIBEGINSINEUROPE","WORLDWARIENDS","TRDIES–CARNEGIEDIES","GERMANMONEYHYPERINFLATES","TREATYOFVERSAILLES,

swift - 为什么 'self' 在类之外使用?

我正在关注thistutorialonGitHub关于如何在iOS应用程序中实现SwiftyDropbox。有一点它告诉我将此代码添加到我的ViewControllerimportUIKitimportSwiftyDropboxfuncmyButtonInControllerPressed(){DropboxClientsManager.authorizeFromController(UIApplication.shared,controller:self,openURL:{(url:URL)->VoidinUIApplication.shared.openURL(url)})}然后我

swift - 如何处理 'Self captured by closure before being initialized'

假设我有一个结构如下:classA{classReadyHandler{//firesoffthecallbackwhenneededletcallback;init(callback:()->Void){self.callback=callback}}letreadyHandler:ReadyHandlerletready=falseinit(){readyHandler=ReadyHandler(callback:{self.ready=true})}}自然,问题是我正在尝试使用尚未初始化的self来初始化回调。如何避免循环引用和相应的错误? 最佳答案

swift - 实现接受并返回 Self 的协议(protocol)静态方法( swift )

给定一个类似这样的协议(protocol):protocolThing{staticfunc*(lhs:Float,rhs:Self)->Self}如何实现盒子类?classThingBox:Thing{varthing:Trequiredinit(thing:T){self.thing=thing}staticfunc*(lhs:Float,rhs:Self)->Self{returnSelf(thing:lhs*rhs.thing)}}编译器提示Self不能在方法类型中使用,但事实是ThingBox是可继承的意味着使用ThingBox不合适。如果不强制它是final就不可能写这个类