草庐IT

class - Swift:属性是实现协议(protocol)的 UIView 子类

这是场景。我有许多不同的View要显示,具体取决于我向用户显示的模型对象。所以我已经建立了一个协议(protocol),任何实现它的View都可以呈现。classMyItem{/*somemodelproperties*/}protocolItemView:class{//someprotocolmethods(e.g.updateWithItem(),etc)funcsetupItem(item:MyItem)}classSpecificItemView:UIView,ItemView{/*therewillbemultipleclasseslikethis*/funcsetupIt

swift - 如何判断一个子类是否覆盖了 Swift 中的一个方法

我有一个Swift类Parent,它有一个方法doSomething(),我想检测(在Parent中)是否子类已覆盖doSomething()。我该怎么做?classParent{funcdoSomething(){}funcsubclassOverridesDoSomething()->Bool{//whatgoeshere?returntrue}}classChild:Parent{overridefuncdoSomething(){}}我知道我可以使用NSObject甚至ObjectiveC运行时函数来做到这一点,但我如何使用Swift类来做到这一点?

swift - 许多子类的一个 XIB View

我有一个xib文件,其中有一个View,连接到名为InputView的UIView。我有一些InputView的子类,例如NameInput和DateInput。我正在使用swift,我想使用连接到InputView的xib文件中的View实例化一个NameInput对象。我不想在xib文件中创建更多View,因为InputView的每个子类看起来都一样。本质上,我问的是如何将一个xib文件与一个View以及该View的许多子类一起使用。这应该返回一个DateInput对象。classfuncmake(label:String,placeholder:String,format:Str

ios - NSManagedObject 子类实现具有所需 init 的协议(protocol)的 Swift 链接器错误

我在开始的Swift项目中遇到问题。我使用Alamofire进行网络连接,使用MagicalRecord作为CoreData的包装器。我不知道这是否重要,但我还是要提一下。设置应用程序正在从JSONAPI检索数据。使用Alamofire'sGenericResponseObjectSerialization我创建了Alamofire.Request的扩展,如链接页面所示,并实现了以下协议(protocol):@objcpublicprotocolResponseObjectSerializable{init?(response:NSHTTPURLResponse,representat

swift - 如何在 swift 子类中初始化无主存储属性?

我有一个UICollectionViewController的自定义swift子类,它具有属性unownedvarmainController。我不知道如何初始化此属性。如果我尝试在调用super.init之前初始化它,Xcode会提示在super.init之前使用了“self”。如果我之后尝试初始化它,Xcode会提示属性“self.mainController”未在super.init调用时初始化。一般来说,在swift中是否可以将无主变量作为子类的属性?classCustomCollection:UICollectionViewController{unownedvarmainC

swift - 子类的闭包/回调中的 instancetype 参数类型

假设我有一个异步任务来获取像这样的实例数组:classfuncfetchListOfInstances(callback:([MySuperClass])->()){//dolongtaskasynchronouslyandcallthecallback}这可以像这样使用:MySubclass.fetchListOfInstances(){myListin//myListinferredas[MySuperClass]forwhateverinmyList{lettypeIReallyWant=whateveras!MySubclass//dostuffherewitheachinst

ios - 使用 UIViewController 子类的子类和 UIView 子类的子类

我的应用程序中有一个特定View的MVC架构。现在我想创建一个View和Controller部分的子类。原始的UIViewController子类加载了Storyboard中的UIView子类。如何让我的UIViewController子类的子类在加载其View时使用我的UIView子类代码的子类?编辑这里有一些关于我想做的事情的更多细节。我目前有这些类(class):ControlViewControlViewController与Storyboard有关。我使用以下方法加载ControlViewController的实例:self.storyboard!.instantiateVi

swift - 带有 UIView 子类的 UITableViewCell 在单元格上创建多层

我有一个使用(.xib)创建的自定义UITableViewCell,并且在从代码创建的单元格中有UIView子类实例表委托(delegate)方法:functableView(tableView:UITableView,cellForRowAtIndexPathindexPath:NSIndexPath)->UITableViewCell{letcell=tableView.dequeueReusableCellWithIdentifier("CustomCellOne",forIndexPath:indexPath)as!CustomOneCellletwoView=ModuleVi

ios - 在 Swift(iOS)和 setValue forKey 中子类化 NSObject 的子类

我正在编写一个基础模型类,它是NSObject的子类,然后每个模型都是该模型的子类。创建模型时,我提供了一个Dictionary构成模型属性的属性。classModel:NSObject{varhi:String="hi"init(attributes:Dictionary){super.init()for(index,attribute)inattributes{self.dynamicType.setValue(attribute,forKey:index)}}}classUser:Model{varname:String="Donatello"}当我在NSObject的直接子类上

xcode - 使用 Swift 子类化 UIView,在 Nib 中使用

我正在尝试使用Swift对UIView进行子类化,并为我的类提供一个带有一个参数的初始化。所需的InitWithCoder初始化程序让我感到困惑。事实上,我确实希望能够将我的View放入Nib文件中。我的理解是,这将调用InitWithCoder。有没有什么办法可以用addl调用这个初始化器。params,除了解码器?现在我正在为我的实例变量分配默认值,如下所示,以便代码可以编译。classClassName:UIView{vardimension:Int={return5}()}我的初始值设定项如下所示。init(Int:dimension){self.dimension=dimen