草庐IT

Optional类

全部标签

ios - Swift 通用变量 fatal error : unexpectedly found nil while unwrapping an Optional value

我正在尝试实现一个简单的通用方法:funcfindMax(numbers_array:[T])->(min_tuple:T,max_tuple:T){varmax_number:T?varmin_number:T?foriinnumbers_array{if(max_numberi){min_number=i}}return(min_number!,max_number!)}我正在尝试访问这样的方法:letresult=findMax([3.4,5,-7,-7.8])但是每当我运行这段代码时,我都会收到以下错误:fatalerror:unexpectedlyfoundnilwhileu

Swift:设置单元格文本标签时无法摆脱 "Optional"

我花了相当多的时间试图解决这个问题,但我并不高兴。我在我的appDelegate中创建了一个数组(levelArrayName),它由一个sqlite数据库填充:classAppDelegate:UIResponder,UIApplicationDelegate{varwindow:UIWindow?vardatabase:COpaquePointer=nilvarlevelArray:[[Int]]=[]varlevelArrayName:[[String]]=[]funccheckdatabase(){//checkisdatabaseexistatpath.....vardirP

swift - fatal error : unexpectedly found nil while unwrapping an Optional value when using AudioPlayer in Swift 2

您好,我正在尝试在swift2中使用以下代码播放音乐文件。基本上我只是将名为f.mp3的音频文件拖到asses文件夹中,我的代码中断并显示以下消息:在展开一个Optional值时意外地发现nil。我需要将mp3文件放在哪里,以便IOS可以找到它。谢谢varaudioPlayer:AVAudioPlayer!=nilfuncplayMyFile(){letpath=NSBundle.mainBundle().pathForResource("f",ofType:"mp3")letfileURL=NSURL(fileURLWithPath:path)do{tryaudioPlayer=AV

iOS 8 核心数据堆栈 - fatal error : found nil while unwrapping an Optional value

我是iOS开发的新手,因此决定实现我自己的核心数据堆栈,以取代Apple的默认堆栈。我不得不对我的代码进行更改(很明显)并且已经能够弄清楚,但是在这种情况下我不能。这是我的代码:importUIKitimportCoreDataclassAddTableViewController:UITableViewController,UIImagePickerControllerDelegate,UINavigationControllerDelegate{@IBOutletweakvarnameTextField:UITextField!@IBOutletweakvarlocationTex

core-data - 在 Swift 中使用 CoreData 时无法解包 Optional.None

好的所以问题实际上发生在代码位varcontext:NSManagedObjectContext=appDel.managedObjectContext运行时我将其注释掉以确认它是那一行并且请注意这是我第一次学习iOS编程所以请尝试在你的回答中尽可能具体谢谢你:)importUIKitimportCoreDataclassSecondViewController:UIViewController,UITextFieldDelegate{@IBOutletvartxtName:UITextField@IBOutletvartxtDesc:UITextFieldoverridefuncvi

swift - iOS 12 SDK 通用函数返回 Optional.some(nil)

使用Xcode10,但没有迁移到Swift4.2,所以我的项目仍在使用Swift4.1运行。假设我在Dictionary上有以下扩展:extensionDictionarywhereKey:ExpressibleByStringLiteral{funcfind(key:Key)->T?{returnself[key]as?T}}我使用此函数以类型安全的方式访问hashmap中的值,例如:letdict:[String:Any]=["foo":"bar"]letfoo:String?=dict.find(key:"foo")//prints"bar"当我希望从我的find函数返回Any类

xcode - 无法强制解包非可选类型的值 : Avoid "Optional()"

我已经在NSUserDefaults中将玩家技能保存为字典,但是当我想访问它时,xcode显示“无法强制解包非可选类型的值”。当我删除“!”它在我想去掉“Optional()”的地方写出“Optional(1)”。我怎么能只写出“1”呢?ifletplayerDic=defaults.objectForKey("Player")as?[String:Int]{lbLevel.setText(String(playerDic!["level"]))}变成"Cannotforceunwrapvalueofnon-optionaltype"在哪里ifletplayerDic=defaults

swift - UICollectionView 问题 "fatal error: unexpectedly found nil while unwrapping an Optional value"

编辑:添加异常断点后(感谢大牛T),发现原来是我的cell.askingUsernameLabel.text=NSString(string:arr[indexPath.row])返回nil。这个问题的解决方案是在swift中,注册子类会覆盖你在Storyboard中所做的事情(如果使用Storyboard)。直接删除self.collectionView.registerClass(CollectionViewCell.self,forCellWithReuseIdentifier:"CollectionViewCell")一切顺利原创我真的迷失了这个:我试图在我的ViewContr

swift - Swift 可选类型中 "an Optional of an Optional"的用途是什么?

我在SwiftTestssourcecode中发现了一个有趣的函数:functest(_v:A????,_cast:(A????)->B?)自Type?只是Optional的语法糖,这意味着参数的类型v可以重写为Optional>>>.我知道这个函数是用来测试可选类型的,所以它的参数肯定是过火了v和cast,但是具有“可选的可选等”的实际用途是什么?输入Swift(如果有)? 最佳答案 当您访问数据时,这些有时会在Swift中发生。一个示例是,如果您有一个字典,其中的值具有可选类型,然后您在该字典中查找一个值:letrockStar

ios - 更新到 XCode 6.3 (Swift 1.2) 后出现 "Objective-C method conflicts with optional requirement method"错误

我在我的应用程序中使用GoogleMapsiOSSDK,直到今天一切都运行良好。我已经下载了Xcode6.3并遇到了一些错误。整理了所有这些,除了我的MapViewController类中的两个错误,在这两个方法上弹出:第一种方法:funcmapView(mapView:GMSMapView!,didTapMarkermarker:ExtendedMarker!)->Bool{...somecode...}错误:Objective-Cmethod'mapView:didTapMarker:'providedbymethod'mapView(:didTapMarker:)'conflic