草庐IT

key_value

全部标签

swift - 您如何反射(reflect) Codable/Codable Keys 协议(protocol)的设计?

我正在尝试实现类似于Swift如何在实现Codable的类中定义的枚举上使用CodableKeys协议(protocol)集的方式。在我的例子中,类是CommandHandler,枚举是CommandIds,它不需要编译器的代码生成,因为枚举总是被显式指定。这是我所追求的简化版本...protocolCommandId{}protocolCommandHandler{associatedtypeCommandIds:CommandId,RawRepresentable}classHandlerA:CommandHandler{enumCommandIds:String,CommandI

ios - swift 4 : Get RGB values of pixel in UIImage

我知道有很多帖子介绍如何在给定CGPoint的情况下获取UIImage中像素的颜色,但据我所知,它们都已过时告诉。其中大部分包含CGImageGetDataProvider和CGDataProviderCopyData,这在Swift4中是一个错误:'CGImageGetDataProvider'hasbeenreplacedbyproperty'CGImage.dataProvider''CGDataProviderCopyData'hasbeenreplacedbyproperty'CGDataProvider.data'Xcode建议使用这些替代品,但它们并不存在,因此我一直无法

ios - reloadData() fatal error : unexpectedly found nil while unwrapping an Optional value

应用程序在该行崩溃classImageValueCell:UITableViewCell,UITableViewDelegate,UITableViewDataSource{@IBOutletweakvarimagesList:UITableView!varimageArray:NSArray!overridefuncawakeFromNib(){//super.awakeFromNib()//InitializationcodeimagesList.delegate=self;imagesList.dataSource=self;imageArray=NSArray()imagesL

swift - "Expression resolves to an unused l-value"与 "Expression is unused"

考虑以下代码:classFoo{letbar="Helloworld!"init(){self//Warning:Expressionoftype'Foo'isunusedself.bar//Error:Expressionresolvestoanunusedl-value}functest(){self.bar//Warning:Expressionoftype'String'isunused}}为什么消息不同,为什么只有一个错误?我明白它们的意思,只是不明白为什么编译器会以不同的方式处理它们。 最佳答案 编译器之所以在初始化程序

ios - swift 3 : What's the safest way to unwrap optional values coming from an array?

首先,我初始化变量以保存股票数据varapplePrice:String?vargooglePrice:String?vartwitterPrice:String?varteslaPrice:String?varsamsungPrice:String?varstockPrices=[String]()我从YQL中获取当前股票价格,并将这些值放入一个数组中funcstockFetcher(){Alamofire.request(stockUrl).responseJSON{(responseData)->Voidinif((responseData.result.value)!=nil)

关于js中for...in循环对象时,输出key值顺序混乱问题

解决循环复杂对象,key值顺序混乱问题描述当循环纯数字索引对象时,循环key值是正确的当对象变为复杂对象时,输出的key就变得复杂解决方案//循环中使用for(letiteminthis.objectOrder(data)){ this.objArr.push(item)}//方法objectOrder(obj){//排序的函数 varnewkey=Object.keys(obj).sort();//先用Object内置类的keys方法获取要排序对象的属性名,再利用Array原型上的sort方法对获取的属性名进行排序,newkey是一个数组 varnewObj={};//创建一个新的对象,用于

ios - 从 NSUserDefaults 中删除 key 不起作用

我的应用程序中有注销功能。似乎是一个奇怪的问题,它不保存NSUserDefaults。在这里我只是想删除key。但是,如果我在注销后再次打开应用程序,它会发现此key仍在NSUserDefaults中。funcdidLogout(){//Clearuserdataletsettings=NSUserDefaults.standardUserDefaults()settings.removeObjectForKey("userData")settings.synchronize()unregisterForRemoteNotifications()openLoginScreen()}知道

arrays - swift 3 : Remove value in Array with Unknown index

我想在我的ShinobiDataGrid中实现多次点击。我有一个有数组的网格(["1","32",andmore])如果我单击网格,我会将其放入新数组self.arrayNr.append(currNr)。但我想检查并删除currNr是否已经存在于arrayNr中,它将从arrayNr中删除。我是新手,正在使用Swift3。我读了一些关于我的问题的问题,比如this和this但它不工作。我认为Swift2在处理String方面比Swift3更简单。有什么建议或答案对我有帮助吗? 最佳答案 您可以使用index(of来检查数组中是否存

ios - Swift 如何获取对象的 "pass by value"

我是Swift的新手。我创建了一个类(例如):classFraction{vara:Intinit(a:Int){self.a=a}functoString()->String{return"\(self.a)"}}我还在其他类函数中构建了一个:classfuncA_plusplus(f:Fraction){f.a++}然后在执行类中我写:varobject=Fraction(a:10)print("beforerunfunc="+object.toString())XXXclass.A_plusplus(object)print("afterranfunc="+object.toSt

ios - 错误 : Value of type string has no member componentsSeparatedByCharactersInSet

以下代码抛出以下错误:“字符串类型的值没有成员componentsSeparatedByCharactersInSet”此代码来自之前在swift版本1或2中运行但不再运行的另一个项目。importFoundationextensionString{funcsplit()->[String]{returnself.componentsSeparatedByCharactersInSet(CharacterSet.whitespaceAndNewlineCharacterSet()).filter({$0!=""});}}extensionArray{funcunique()->[T]{