草庐IT

init-parameters

全部标签

ios - 具有多个对象和键的 NSDictionary init

我最近一直在尝试弄清楚如何像以前在Objective-c中那样快速初始化字典:NSMutableDictionary*loginDictionary=[[NSMutableDictionaryalloc]initWithObjects:@[UsernameTextfield.text,PasswordTextfield.text]forKeys:@[@"username",@"password"];我尝试用Swift编写它:letuserDictionary=NSMutableDictionary.init(object:[usernameTextField.text,password

ios - "Generic parameter ' ResultType ' could not be inferred"while use NSFetchRequest() with swift 3.0

当我将我的项目转换为swift3.0时,我发现了这个错误parameter'ResultType'couldnotbeinferred我的代码是这样的:letfetchRequest=NSFetchRequest(entityName:"Book")我之前在我的项目中使用过这段代码,现在出现错误,我怎么shell修改就对了。 最佳答案 应该是这样的letfetchRequest:NSFetchRequest=Book.fetchRequest()Swift3的Book+CoreDataProperties.swift文件将是这样的i

ios - Swift 3.0 中的 UICollectionViewController 错误 : must be initialized with a non-nil layout parameter

我是iOS开发新手。我一直在学习Swift,今天,我尝试使用UICollectionViewController。我的代码如下:classViewController:UICollectionViewController,UICollectionViewDelegateFlowLayout{varcolView:UICollectionView!overridefuncviewDidLoad(){super.viewDidLoad()//Doanyadditionalsetupafterloadingtheview,typicallyfromanib.letlayout:UIColle

swift : Generic parameter 'T' could not be inferred

我有一个名为P的协议(protocol),我想编写一个函数来返回符合该协议(protocol)的任何类型的实例。我是这样写的:funcf()->T?{//...}但是当我尝试调用它时:varfp=f()我收到此错误:无法推断通用参数“T”。我做错了什么以及如何解决这个问题?感谢您的帮助。 最佳答案 你非常接近。假设您有一个符合P的structA。然后您可以按如下方式指定通用参数:varfp:A?=f()没有这些信息,编译器就无法知道fp应该是什么类型。 关于swift:Genericpa

swift - swift 中使用 class() 和 class.init() 的区别

这个问题在这里已经有了答案:Istheredifferencebetweenusingaconstructorandusing.init?(2个答案)关闭3年前。为什么我们需要显式地使用init方法,而我们可以在没有它的情况下创建一个对象classDetails{}varobj=Details()varobj=Details.init()这两个实例创建有什么区别

swift - 覆盖 init(coder aDecoder : NSCoder!) 没有像预期的那样工作 - Swift

我正在尝试在Swift中子类化UITableViewCell。我已经试过了:classCUISwitchTableViewCell:UITableViewCell{varlabel=UILabel()varswitchControl=UISwitch()init(coderaDecoder:NSCoder!){super.init(coder:aDecoder)//SetupUI}}但是在调用super.init(coder:aDecoder)时出现编译错误:Mustcalladesignatedinitializerofthesuperclass'UITableViewCell'所以

ios - fatal error : init(coder:) has not been implemented Xcode 7 iOS 9

我昨晚更新了一个Xcode6/iOS8项目,似乎遇到了一些问题。其中之一是它抛出fatalerror消息并使应用程序崩溃。当按下一个按钮时,我正在尝试设置下一个按钮。letviewController:UIViewController=UIStoryboard(name:"Main",bundle:nil).instantiateViewControllerWithIdentifier("gameViewController")self.presentViewController(viewController,animated:true,completion:nil)然后在gameVi

xcode - SWIFT:init 和 super.init 之间的区别

我正在阅读的TheSwiftProgrammingLanguage一书。书上说Init是一个初始化程序,用于在创建实例时设置类。(我的理解是:通过创建实例,将执行init()中的代码块)。然而,这本书显示了super.init但没有说明任何相关信息。 最佳答案 官方文档确实涵盖了初始化父类(superclass)的方面:Theinit()initializerforBicyclestartsbycallingsuper.init(),whichcallsthedefaultinitializerfortheBicycleclass

ios - XCode6 Beta 中的编译器警告 - “Shorthand External Parameter Names”

我在Xcode6Beta上玩Swift,当我在函数定义“#”中使用时,就像在苹果的Swift编程指南中一样,我收到以下编译器错误:参数中的无关“#”:“characterToFind”已经是关键字参数名称//thiscodeisacopy-pastecodefromapple'sSwiftlanguageprogramingguidefunccontainsCharacter(#string:String,#characterToFind:Character)->Bool{forcharacterinstring{ifcharacter==characterToFind{returnt

ios - 它显示 "required initializer init must be provided in subclass of UIControl"当我覆盖 init(frame : CGRect)

此代码有效:importUIKitclasswheel:UIControl{}但是这段代码没有:classwheel:UIControl{overrideinit(frame:CGRect){super.init(frame:frame)}当我覆盖init(frame:CGRect)而不是init(coderaDecoder:NSCoder).为什么我必须执行init(coderaDecoder:NSCoder)?如果我没有实现init(frame:CGRect)为什么我不需要实现它?我找到了一个类似的StackOverflow帖子,但没有解释:Swift:Error:'require