草庐IT

objc_requires_super

全部标签

ios - 实例方法表单扩展的覆盖取决于 '@objc' 的弃用推理

我正在尝试将我的代码(用Swift3编写)转换为Swift4,为此我在需要的地方添加了@objc。Xcode在自动修复它们方面做得很好,但我正在努力解决一些问题(都使用相同的2种方法),Xcode无法提供帮助,它只是将@objc放在我的代码中的某个地方.我在我的ViewController类中覆盖了一个名为navbarRightButtonAction(button:)的方法。classViewController:PBViewController{overridefuncnavbarRightButtonAction(button:PBAdaptiveButton){...}}这是我

ios - 不支持覆盖扩展中的非@objc 声明

似乎不知从何而来,我开始收到与我经常使用的两个扩展函数相关的数百个错误。我尝试注释掉出现此错误之前的所有新代码。我还尝试清理我的构建文件夹。我如何摆脱这篇文章标题中发现的错误?为什么我已经成功使用这些扩展几个月了,它却随机出现?extensionUITableViewCell{publicfuncgetSize(large:CGFloat,medium:CGFloat,small:CGFloat)->CGFloat{varsize=CGFloat()letscreenHeight=Int(UIScreen.main.bounds.height)ifscreenHeight>=800{s

MAC安装mysqlclient失败,× Getting requirements to build wheel did not run successfully.│ exit code: 1╰─

问题:在使用django项目安装mysqlclient时出现以下错误:CollectingmysqlclientUsingcachedmysqlclient-2.1.1.tar.gz(88kB)Installingbuilddependencies...doneGettingrequirementstobuildwheel...errorerror:subprocess-exited-with-error×Gettingrequirementstobuildwheeldidnotrunsuccessfully.│exitcode:1╰─>[27linesofoutput]/bin/sh:mys

swift - swift 课前@objc 和课上@objc(class_name) 的区别?

有什么区别:@objcclassMyClass:NSObject{}和@objc(MyClass)classMyClass:NSObject{} 最佳答案 @objc修饰符在Swift2中被弃用。所有标记为@objc的类都必须是NSObject的子类,从而使修饰符@objc变得多余。但是,@objc(xxx)用于定义类的替代名称(供运行时和Objective-C代码使用)。此修饰符仅在您希望在运行时/ObjectiveC代码中使用不同的名称时才有用。默认情况下,运行时名称与声明的名称相同,以模块名称和点作为前缀。例如,classX:

ios - Swift 中 @discardableResult 声明的 ObjC 版本是什么

在Swift3中,当没有使用返回值时会有警告。@discardableResult声明将抑制该功能。我如何在ObjC文件中声明它,意味着,与__attribute__((warn_unused_result))相反 最佳答案 在ObjC和Swift如果您不捕获方法返回的内容,则不会出现警告。但是从swift3开始,你必须使用返回值,如果你不想,使用方法的@discardableresult属性。在ObjC中,如果你想警告你可以使用warn_unused_result属性。-(int)mymethod:(int)a__attribut

swift 错误 : 'Sequence' requires the types 'T' and 'ArraySlice<T>' be equivalent

我正在尝试更新数学库以与Swift3兼容,但我遇到了一个错误:'Sequence'requiresthetypes'T'and'ArraySlice'beequivalentApple关于Sequence的文档建议makeIterator()方法返回一个迭代器,它确实这样做了。迭代器似乎返回了grid中的一个元素变量,即变量T.我不太确定我在这里错过了什么。任何意见将是有益的。publicstructMatrixwhereT:FloatingPoint,T:ExpressibleByFloatLiteral{publictypealiasElement=Tletrows:Intletc

ios - 如何使用其父类(super class)的实例初始化我的子类?

在我的应用程序中,我读取了EKEvent类型的日历事件,并且我使用大量计算变量进行了扩展,因此我可以轻松地获取日历中每个事件的持续时间、工时数等。但是在大规模情况下,性能很差-所以我想改用惰性变量来缓存我所有的额外数据。因此,我想创建一个EKEvent的子类-称为CustomEvent,它添加了惰性变量,但我的问题是EKEventStore总是返回EKEvents,我需要将其转换为我的CustomEvent子类的实例,以便能够访问惰性变量等。简单的类型转换是不够的,我已经在Playground上尝试过,看看有什么用,但没有任何用处。我需要一个CustomRectangle的特殊构造函数

ios - 在 super.init 初始化 self 之前在属性访问 'self' 中使用 'frame'

我有这个代码importUIKitclassCardView:UIView{@IBOutletvarimageView:UIImageView!init(imageView:UIImageView){self.imageView=imageViewsuper.init(frame:CGRect(x:0,y:0,width:self.frame.size.width,height:self.frame.size.height))}requiredinit?(coderaDecoder:NSCoder){fatalError("init(coder:)hasnotbeenimplement

swift - 当子类中有覆盖函数时如何转换为父类(super class)

创建了父类(superclass)Car和子类Jaguar。子类中的函数info()->Void覆盖了父类(superclass)的函数。已创建类型为Jaguar的名为theAuto的实例。问题:似乎我无法将theAuto转换为Car类型,请查看代码片段及其注释classCar{funcinfo(){print("You'vegotacar")}}classJaguar:Car{overridefuncinfo(){print("You'vegotaJaguar")}}lettheAuto=Jaguar()theAuto.info()//-->You'vegotaJaguarletau

swift - Xcode 错误 : Missing required module 'Firebase'

问题:我有一个动态框架,它使用cocoapods添加的Firebase。我也有应用程序,它使用这个动态框架。但是当我尝试构建项目时出现错误MissingrequiredmoduleFirebase。我尝试了以下方法:删除派生数据+清理重新安装pod将“导入路径”添加到build设置(在这种情况下,我在运行时遇到错误“库未加载”)我的播客文件:target'Project'do...endtarget'Framework'dopod'Firebase/Core'pod'Firebase/Auth'endFramework添加到Embeddedbinaries和LinkedFramewor