草庐IT

ios - Swift - 带有 Objective-C 选择器 '*()' 的方法 '*' 与具有相同 Objective-C 选择器的父类(super class) '*' 的 'NSObject' 的 getter 冲突

自从将我的xcode更新到6.3.1后,我收到了这条错误消息。/Users/MNurdin/Documents/iOS/xxxxx/Models/Message.swift:46:10:Method'hash()'withObjective-Cselector'hash'conflictswithgetterfor'hash'fromsuperclass'NSObject'withthesameObjective-Cselector我的代码varhash_:UIntfunchash()->UInt{returnUInt(hash_);} 最佳答案

Swift:如何使具有子类返回类型的函数符合协议(protocol),其中父类(super class)被定义为返回类型?

我有一个协议(protocol),其中定义了一个函数,函数的返回类型是SuperclassType。在一个符合协议(protocol)的类中,我试图定义这个函数,但返回类型是SubclassType。编译器告诉我,这个类不符合协议(protocol),因为显然SubclassType!=SuperclassTypeprotocolSomeProtocol{funcsomeFunction(someParameter:SomeType)->SuperclassType?}classSomeClass:SomeProtocol{funcsomeFunction(someParameter:

ios - 带有名为 `imageView` 的 IBOutlet 的 UITableViewCell 与父类(super class) IBOutlet 冲突的错误

我制作了一个自定义的UITableViewCell,我在其中添加了2个标签和一个UIImageView,每个标签都带有IBOutlets。IBOutletweakvarimageView:UIImageView!我已经为UIImageView提供了一个名为imageView的IBOutlet,但在添加它之后出现错误:Getterfor'imageView'withObjective-Cselector'imageView'conflictswithgetterfor'imageView'fromsuperclass'UITableViewCell'withthesameObjectiv

ios - 如何知道一个对象是子类还是父类(super class)的实例

我有2个类:classParent{funca(){self.b()}funcb(){//IwanttocheckhereifselfisParent//warning"'is'testisalwaystrue"{log("instanceofparent")}}}classChild:Parent{}我想这样检查//varchild=Child()child.a()//don'tseelogvarparent=Parent()parent.a()//seelog我知道我可以在父类(superclass)中创建类似description的方法,并在子类中覆盖它。我想知道Swift是否可

swift - 使父类(super class)的初始值设定项返回特定的子类?

这个问题在这里已经有了答案:CustomclassclustersinSwift(7个答案)关闭7年前。我正在Swift中创建一个单位框架,它具有用于不同单位(例如质量和体积)的测量父类(superclass)和子类。一个功能是允许框架正确猜测它是用什么单元创建的,并返回正确的类。示例代码:classMeasurement{varunitString:Stringinit(unknownUnit:String){//checksiftheunitiseitherVolumeorMass,andreturnsaninstanceofthatclass}}classVolume:Measu

Swift 运行时 - 调用父类(super class)方法

我正在运行时创建UIView的子类,并为其提供layoutSubviews方法的实现。我需要做的一件重要事情是执行super.layoutSubviews()。在Objective-C中,我可以使用objc_msgSendSuper函数来完成:ClassobjectClass=object_getClass(object);Classsuperclass=class_getSuperclass(objectClass);structobjc_supersuperInfo;superInfo.receiver=object;superInfo.super_class=superclass

generics - 在 Swift 泛型中强制父类(super class)

我试图实现一种新方法来连接两个Array,返回一个包含通用数据类型的Array给其他两个。为了清楚起见,我希望有一种方法可以做类似的事情(知道语法不正确......):@infixfunc+(left:Array,right:Array)->Array{//joinbotharrays}总是认为编译器能够检测两个类的共同祖先类型。如果这实际上是不可能的,那么正确的方法是什么?使“super”类型显式化? 最佳答案 Swift的类型推断比您想象的要聪明。秘诀是查看nil-coalescing运算符的签名??:func??(option

ios - 如何在 Swift 中获取对父类/父类(super class)的引用?

在Swift中你可以创建继承:classA{}classB:A{}在此示例中,B继承自A。如果我在B中创建一个函数,有没有一种方法可以获得对它的父类(superclass)A的引用?我在想它会是这样的:self.super或者self.super()或者self.parent我尝试了所有这些,但没有一个对我有用。有谁知道如何获得对父类(superclass)的引用? 最佳答案 它的一个纯Swift版本,可以在Linux上运行,但依赖于一个不太官方的API是:classA{}classB:A{}letsuperclass=Swift.

swift - 在 Swift 中,为什么子类方法不能覆盖父类(super class)中协议(protocol)扩展提供的方法

我知道这个问题的标题令人困惑,但下面的示例解释了奇怪的行为:protocolProtocol{funcmethod()->String}extensionProtocol{funcmethod()->String{return"FromBase"}}classSuperClass:Protocol{}classSubClass:SuperClass{funcmethod()->String{return"FromClass2"}}letc1:Protocol=SuperClass()c1.method()//"FromBase"letc2:Protocol=SubClass()c2.m

ios - 合并具有相同父类(super class)的 Swift 数组

我正在尝试找到合并Swift数组的最佳方法,这些数组的类型不同,但它们具有相同的父类(superclass)。我已经阅读了所有教程,所以我知道我可以使用:vararray=["Some","Array","of","Strings"]array+=["Anotherstring","andonemore"]array.append(["Or","This"])在这种情况下array变量推断类型[String].我遇到的问题与类的下一个假设情况有关(在这种情况下属性无关紧要,只是为了在类之间产生差异):classA{varproperty1:String?}classB:A{varpro