UIApplicationDelegate_Protocol
全部标签 我想创建一个仅由特定类及其子类快速采用的协议(protocol)。我知道我可以使用这样的协议(protocol)扩展protocolPeopleProtocol:class{}extensionPeopleProtocolwhereSelf:People{}但是我的协议(protocol)中的方法将是init方法,该方法将由类或其子类实现,并且仅返回某些特定类型的对象。像这样的东西。protocolPeopleProtocol:class{init()->People}或者我可以做这样的事情extensionPeopleProtocolwhereSelf:People{init()}但
我用泛型逻辑创建了一个小例子,但我不明白这个错误是什么意思。我认为designatedinitializer有一些问题。希望有人已经处理过并能给我解释一下。protocolTest{init(value:Int)}classClassTestwhereT:UIView{vart:Tinit(){t=T(value:2)//error:}}给出以下编译器错误:Argumentlabels'(value:)'donotmatchanyavailableoverloads 最佳答案 此错误已在SwiftJira中打开:(-https://
今天我迁移到Xcode6GM种子,现在我得到以下错误:Type'ProfilesTableViewController'doesnotconformtoprotocol'UITableViewDataSource'.我已经覆盖了numberOfRowsInSection、cellForRowAtIndexPath和numberOfSectionsInTableView。事实上,直到今天一切正常。我注意到,当我删除UITableViewDataSource时,一切正常,没有发生任何错误。那么..是否有必要再使用“UITableViewDataSource”,或者只是覆盖其中的函数?
我有以下两种方法:funcisAuthenticated()->Bool{varcurrentUser:CurrentUser?=self.getCurrentUser()ifcurrentUser==nil{returnfalse}self.token=getUserToken(currentUser!.username)ifself.token==nil{returnfalse}if!tokenIsValidForUser(self.token!,user:currentUser!){returnfalse}returntrue}functokenIsValidForUser(to
我正在实现trycatch枚举:enumprocessError:Error,CustomStringConvertible{caseonevarlocalizedDescription:String{return"one"}casetwovarlocalizedDescription:String{return"two"}}但我收到以下错误:typeprocessErrordoesnotconformtoprotocolCustomStringConvertible但是如果我在第二种情况下更改变量的名称,我不会得到错误:enumprocessError:Error,CustomStr
我有一个变量,它必须是UIView,它也实现了MTMathKeyboard协议(protocol)。我试过了,varkeyboard:(UIView&MTMathKeyboard)varkeyboard:UIView实现协议(protocol)的非泛型类实例的语法是什么? 最佳答案 在Swift4中你可以使用:letkeyboard:UIView&MTMathKeyboard 关于类和协议(protocol)的SwiftTypealias,我们在StackOverflow上找到一个类似的
我一直在努力掌握面向协议(protocol)的编程,但我不明白以下两种情况之间的区别...场景1我有两个类UIViewControllers。这两个类都需要使用一些通用功能,所以我创建了一个协议(protocol)和一个带有协议(protocol)默认实现的扩展,然后ViewController只需要在类行中包含协议(protocol),它们就会自动继承所需的功能。即...protocolSomeProtocol{funcfoo()}extensionSomeProtocol{funcfoo(){//execute}}classFirstViewController:UIViewCon
我正在尝试编写一个符合CollectionProtocol的协议(protocol),它有一个associatedType-Object和一个属性对象。protocolDDCDataSource:Collection{associatedtypeObjectvarobject:Object{getset}}我想为Object也符合Collection协议(protocol)的情况添加一些默认功能,即直接返回Object对这些必需的Collection属性和函数的实现。除了Collection对下标的要求外,似乎一切正常。Cannotsubscriptavalueoftype'Self.
我正在Swift中构建一个非常简单的结构,其中包含一个可选值数组。该结构必须符合Equatable协议(protocol)。这是代码:structMyTable:Equatable{varvalues:[Int?]=Array(count:64,repeatedValue:nil)}func==(lhs:MyTable,rhs:MyTable)->Bool{returnlhs.values==rhs.values}很简单。我没有看到任何错误,但编译器给出了错误:“'[Int?]'不可转换为'MyTable'”。我在做傻事吗?或者这是编译器的错误?谢谢!(使用Xcode6-Beta5)
在Swift中,我如何声明一个明确声明它符合某些协议(protocol)的变量?objective-c等价物是@propertyid据我了解,这样做:vara:NSObject声明一个类型为NSObject协议(protocol)的变量,但我不这样做,我想声明一个类型为AnyObject的变量。符合。我也有兴趣了解如何声明一个对象数组,其中每个对象都符合该协议(protocol)。 最佳答案 其实不需要AnyObject这里;如果您只关心遵守协议(protocol)Proto,你可以简单地写vara:Proto.(在某些情况下,您的