草庐IT

ios - 来自字符串的 DateFormatter 日期返回 nil

由于某些原因,某些设备无法将字符串转换为日期。这是我的日期转换代码:funcdateFromString(string:String)->Date?{letf=DateFormatter.init()f.dateFormat="yyyy-MM-ddHH:mm:ss"returnf.date(from:string)}现在,通过我的分析平台,我可以捕捉到返回nil的时间。我不知道为什么会这样。我认为它与本地,可能与时区或12/24h设置有关,但我不知道是什么问题。更多详情...我已经跟踪到以下导致零返回的设置:timezone-Asia/Muscatlocal-en_GBstring-"

swift - 为什么我需要在 Struct - Swift 中将可选值显式声明为 nil

引用自文档:Ifyourcustomtypehasastoredpropertythatislogicallyallowedtohave“novalue”—perhapsbecauseitsvaluecannotbesetduringinitialization,orbecauseitisallowedtohave“novalue”atsomelaterpoint—declarethepropertywithanoptionaltype.Propertiesofoptionaltypeareautomaticallyinitializedwithavalueofnil,indicati

Swift 语言 : nil check, 并且如果是则实例化新对象

有什么办法可以简化这个:varunloadedImagesRows=[String:[Int]]()privatefuncaddToUnloadedImagesRow(row:Int,forLocation:String!){ifunloadedImagesRows[forLocation]==nil{unloadedImagesRows[forLocation]=[Int]()}unloadedImagesRows[forLocation]!.append(row)}难道Swift没有一个简单的方法来检查nil,如果是,则创建一个新对象,并且所有后续使用都引用该对象?

swift - 如何在 swift 中为函数类型定义一个可选变量,它可以是 nil?

我想要一个变量来保存一个函数,但它被初始化为nil。我试图将其设为可选,但出现错误。varOnClick:(UIButton!)->()?=nil我收到这个错误Couldnotfindanoverloadfor'__conversion'thatacceptsthesuppliedarguments如果我删除?,我也会得到同样的错误。 最佳答案 你只需要将它括在括号中:varOnClick:((UIButton!)->())?=nil 关于swift-如何在swift中为函数类型定义一个

macos - pathForResource 在 Mac OS X 控制台应用程序中返回 nil — Swift

我正在使用命令行工具,尝试检索存储在名为words.txt的文件中的单词列表的路径。该文件被添加到项目中,包括在项目的目标成员中,并在目标的复制文件构建阶段被选择复制。在Main.swift中这段代码:ifletpath=NSBundle.mainBundle().pathForResource("words",ofType:"txt"){println("Pathis\(path)")}else{println("Couldnotfindpath")}打印“找不到路径”。mainBundle()类函数是要访问的正确包吗?关于pathForResource函数为何返回nil的任何想法?

swift - 在 swift 函数中返回 nil

这个问题在这里已经有了答案:Swift:NilisincompatiblewithreturntypeString(3个答案)关闭5年前。在Swift中,我有一个返回某种对象的函数。该对象是可选的。当它不存在时,我想我应该返回nil,但是Swift禁止我这样做。以下代码无效:funclistForName(name:String)->List{ifletlist=listsDict[name]{returnlist}else{returnnil}}它说:error:nilisincompatiblewithreturntype'List'但我不想返回类似空List对象的东西,当opti

ios - Nib 中的 IBOutlets 在 awakeFromNib 和 initWithCoder 上都是 nil——没有 subview

我有一个自定义的UIView子类,它通过Nib文件(一个UIImageView、一个UIView和一个UITextField)和IBOutlets集添加了三个subview。但是当在子类中调用awakeFromNib或initWithCoder时,所有IBOutlets都是nil甚至subviews数组也是空.我正在使用Swift和XCode6beta5,其中这个UIView子类在一个框架中,我将UIView子类添加到我项目中的Storyboard中,这样我就可以使用新的Live查看技术。但是我在实时View中也看不到添加的subview,这很可悲。我找不到任何方法来解决这个问题,这是

swift - 为什么在强制解包的 nil 可选值类型上使用 dynamicType 有效?

我真的很困惑地发现下面的代码只是拒绝与典型的“UnexpectedlyfoundnilwhileunwrappinganOptionalvalue”异常一起崩溃,这是你期望从强制展开bar。structFoo{varbar:Bar?}structBar{}varfoo=Foo()debugPrint(foo.bar)//nildebugPrint(foo.bar!.dynamicType)//_dynamicType.BardynamicType似乎以某种方式能够回退到bar的定义类型——而不会崩溃。请注意,这似乎仅在Bar被定义为value类型(如@dfrisays)时发生,Foo是

ios - nil 是初始化程序中唯一允许的返回值吗?

我正在尝试将UICollectionViewFlowLayout子类化,但我收到错误消息“nil是初始化程序中允许的唯一返回值。”我试图检查父类(superclass)的初始化程序,如果没有,我会返回nil,但是,唉,我收到另一个错误,说self是不可变的。importUIKitclassCollectionViewSpringLayout:UICollectionViewFlowLayout{vardynamicAnimator:UIDynamicAnimator?overrideinit(){self.minimumInteritemSpacing=10self.minimumIn

swift - 为什么 compactMap 返回 nil 结果?

考虑这个代码片段:vara:String?="abc"varb:String?letresult=[a,b].compactMap{$0}执行后,result为["abc"]这是预期的结果。这里result的元素(ElementOfResult)是String。print(type(of:result))Array现在到了有趣的部分。将代码段更改为之后vara:String?="abc"varb:Int?letresult=[a,b].compactMap{$0}并执行它,结果将是[Optional("abc"),nil]这里result(ElementOfResult)的元素是Any