草庐IT

ios - UICollectionViewController 中的 collectionView 可选

阅读Appledocumentation在UICollectionViewController的collectionView上,它似乎是可选的,如?所示。这对我来说似乎很奇怪,好像有可能collectionView可能是nil然后UICollectionViewController似乎毫无意义。关于UITableViewController的tableView,AppleDocumentation声明它不能为nil,因为它标有!。我的问题是,为什么collectionView是可选的,使用UICollectionViewController时我必须考虑什么?我是否必须担心collect

ios - 为什么 IBInspectable 不为 Storyboard 中的可选变量设置值?

我正在制作演示以了解@IBInspectable的工作原理。首先,我在UIViewController子类中创建了两个变量:@IBInspectablevarintTest:Int=10@IBInspectablevarflag:Bool=false以便它出现在Storyboard中。之后,我更改Storyboard中这些变量的值:然后,我尝试像这样在“viewDidLoad()”方法中打印这些变量:overridefuncviewDidLoad(){super.viewDidLoad()//Doanyadditionalsetupafterloadingtheview,typical

swift - 在 Swift 中使用不同类型覆盖父类(super class)的可选属性

我正在寻找一种方法来覆盖具有不同类型的父类(superclass)的可选属性。如果我这样测试:protocolprotocol1{functestOne()}protocolprotocol2:protocol1{functestTwo()}classclass1{vartoto:protocol1?init(){}}classclass2:class1{overridevartoto:protocol2?}lettest=class2()我在这一行中遇到错误:overridevartoto:protocol2?类型为“protocol2”的属性“toto”无法覆盖类型为“protoc

swift - 如何在快速搜索字典时使用可选链接?

我想使用iflets安全地搜索swift字典中的值,并确保它在我越来越深入字典时是类型安全的。该字典包含包含NSArray的字典,后者包含更多字典。起初尝试我的代码是这样的:ifletkkbox=ticket["KKBOX"]as?Dictionary{ifletkkboxDlUrlDict=kkbox["kkbox_dl_url_list"]as?Dictionary{ifletkkboxDlUrlArray=kkboxDlUrlDict["kkbox_dl_url"]as?NSArray{fordictinkkboxDlUrlArray{ifletname=dict["name"]

ios - Swift - IOS 中 Data 类型的 deviceToken 和可选 String 类型的 Fir InstanceID token 有什么区别?

我是Firebase云消息传递和推送通知的新手。当我们注册推送通知时,调用此方法funcapplication(_application:UIApplication,didRegisterForRemoteNotificationsWithDeviceTokendeviceToken:Data){//deviceTokenisreceived}然后,为了发送推送通知,我们使用这行代码来获取token:letmyToken=FIRInstanceID.instanceID().token()!现在我想问一下这些token有什么区别? 最佳答案

properties - "Cannot assign to the result of this expression"- 如何设置可选变量的属性

我有一个关于Swift和可选属性的问题。假设我有以下代码:importFoundationclassMyClass:NSObject{varparent:MyClass?varstring:String?init(){super.init()}}letvariable:MyClass=MyClass()variable.string="variable"variable.parent?.string="parent"我在以下行中收到错误消息“无法分配给该表达式的结果”variable.parent?.string="parent"现在,我可以通过将问号替换为感叹号来抑制此错误,据我所知

ios - 使用 Swift 创建一个字典作为可选属性

我创建了一个swift类来测试字典。所以,我写了下面的代码:importFoundationclassMyClass{varmyFirstDictionary:[String:String]varmyThirdDictionary:[String:String]?init(){varmySecondDictionary:[String:String]=[String:String]()mySecondDictionary["animal"]="Monkey"mySecondDictionary.updateValue("something",forKey:"SomeKey")self.

swift - 为什么将 Double 转换为 Int 不会在 Swift 中返回可选的 Int?

将String转换为Int会返回可选值,但将Double转换为Int不会返回可选值。这是为什么?我想检查double值是否大于最大Int值,但由于转换函数不返回可选值,我无法使用可选绑定(bind)进行检查。varstringNumber:String="555"varintValue=Int(stringNumber)//returnsoptional(555)vardoubleNumber:Double=555varfromDoubleToInt=Int(doubleNumber)//returns555因此,如果我尝试转换大于最大整数的double,它会崩溃而不是返回nil。va

Swift 3.0 可选链接

我是swift的新手,所以这绝对是一个新手级别的问题。我在思考一些Swift3.0文档时发现了一个潜在的错误。我想知道这个例子是否不正确(或模棱两可),或者我实际上错过了一些指南。参见http://swiftdoc.org/v3.0/type/Optional/关于可选链接的部分。OPTIONALCHAININGTosafelyaccessthepropertiesandmethodsofawrappedinstance,usethepostfixoptionalchainingoperator(?).Thefollowingexampleusesoptionalchainingtoa

swift - 可选地转换为 Type 是 Swift 中的类类型的变量

我在Google和SO上寻找过类似的问题,但找不到任何直接相关的问题。C#中似乎有两个类似(也许?)的问题,但我不懂这种语言,所以我没有真正正确地理解这些问题(HowtocastobjecttotypedescribedbyTypeclass?和CastavariabletoatyperepresentedbyanotherTypevariable?)。我正在尝试在SpriteKit的GameViewController中编写一个通用的场景更改函数。我制作了一个SceneChangeType枚举用作参数。尝试将变量可选地转换为我期望的通用类型时出现错误。澄清一下,我确信这不是一个好主意