草庐IT

swift-keypath

全部标签

swift - View Controller 未正确显示

我有4个ViewController,其中3个运行良好。它们都有自己的.swift文件,并使用Storyboard链接。最后一个ViewController没有正确显示,尽管没有什么可以阻止它这样做。这是调用最后一个ViewController的文件的摘录:funcshowBook(){self.presentViewController(BookViewController(),animated:true,completion:nil)}这是调用的文件:importUIKitclassBookViewController:UIViewController{overridefuncvi

swift - Firebase 和使用 Swift 读取嵌套数据

我正在尝试使用Swift和Firebase创建一个简单的Instagram风格的应用程序,但我在阅读来自Firebase的每个图像帖子的评论时遇到了麻烦。这里有几个问题:我在树的顶部有帖子,然后是每张图片的键,键下有每个用户添加的评论数据。在这种情况下是否可以使用用户名作为key而不是childbyAutoId生成的key?我如何读取userComment和UserName并将它们保存到一个数组中,然后我可以将其显示在TableView中?非常感谢任何回复。谢谢。 最佳答案 varpostsCommentsDict:NSMutabl

ios - 根据选择器选择确定Segue IOS,swift

我目前有一个有两个选项的选择器,我正在寻找的是,根据在选择器中所做的选择,确定下面的下一个viewController是我尝试使用的,但是,我立即收到一个错误说明最后一个“if”语句应转换为let语句。下面是我的选择器的代码,并试图引导到相关的segue。importUIKitimportFirebaseimportCoreDataimportCoreLocationclassSchoolPickerViewController:UIViewController,UIPickerViewDataSource,UIPickerViewDelegate{@IBOutletweakvarSc

swift - 信标调用了 didRange 但没有调用 didEnter?

当信标关闭时,我总是触发didRange,而didEnter不即使我打开信标。(在信息上设置所有键)设置信标:if(CLLocationManager.authorizationStatus()!=CLAuthorizationStatus.AuthorizedWhenInUse){locationManager.requestWhenInUseAuthorization()}letregion=CLBeaconRegion(proximityUUID:NSUUID(UUIDString:"74278BDA-B644-4520-8F0C-720EAF059935")!,identifi

ios - 如何在 Swift 中使用多个数组解析 JSON

我是swift语言的新手,新手问题,但我不得不问,因为我对这里的字典和数组用法有点困惑,我得到了这样的json;{"MainPageLast":[{},{}..],"MainPageSport":[{},{}..],"MainPageEco":[{},{}..],"MainPagePol":[{},{}..]}我制作了包含所有这些数组的基类作为这样的字典;publicclassfuncmodelsFromDictionaryArray(array:NSArray)->[Json4Swift_Base]{varmodels:[Json4Swift_Base]=[]foriteminarr

javascript - 将 JSON 数组解析为 Swift 数组

我想转换这个JSON(这是有效的JSON)-["foo","bar",["cat","dog"]]类似的Swift数据结构,即["foo","bar",["cat","dog"]]我想知道与使用常规JSON解析器(可能创建更大的对象)相比,是否有更优化的方法来执行此操作。我理解JSON是一种序列化格式,而Swift数组是一个对象。尽管如此,由于它们看起来(和功能)如此相似,也许我还缺少一种更直接的方法? 最佳答案 更好地设计您的JSON并仅使用众多可用的之一SwiftJSONframeworks.

swift - 如何将通用数字类型 'T' 转换为 CGFloat

我有一个通过通用T类型接受数字类型的类,我希望能够将它转换为CGFloat但它抛出:Cannotinvokeinitializerfortype'CGFloat'withanargumentlistoftype'(T)'我必须在类里面做什么才能成功转换它?CGFloat(self.top)-这是它不喜欢的地方“T”类型定义如下:protocolNumeric:Comparable,Equatable{//init(_v:Float)init(_v:Double)init(_v:Int)init(_v:UInt)init(_v:Int8)init(_v:UInt8)init(_v:Int

swift - 删除类型信息时类型删除: do we risk non-reversibly losing access to kept-alive data of the instance of the erased type,?

考虑以下常见的简单类型删除方案protocolFoo{associatedtypeBarfuncbar()->Bar}structAnyFoo:Foo{privatelet_bar:()->Barinit(_foo:F)whereF.Bar==Bar{_bar=foo.bar/*storesareferencetofoo.bar,sofookeptalivebyARC?*/}funcbar()->Bar{return_bar()}}假设上面的初始化参数foo是(打算成为)“大”类型的临时实例,我们只对从中切出Foo蓝图的信息感兴趣(即bar()方法)。structHuge{/*...*

ios - Objective-C和Swift之间字节数组的类型转换

我正在使用一个用Objective-C编写的库,它有一个组织为结构的属性并包含一个字节数组:typedefstruct{byteID[MAX_ID_LENGTH];shortLength;...}RFIDTag;MAX_ID_LENGTH是一个值为64的常量。我将库连接到我的swift项目,到目前为止它运行良好,但我想知道属性RFIDTag.ID的返回类型是byteID(UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,UInt8,U

ios - 如何在 swift 中定期清除 NSCache?

我正在努力想出一个好的解决方案。因此,在我的应用程序中,我有一个加载用户数据的UITableView,每个单元格都有一个个人资料图像UIImageView。因此,每次循环遍历单元格时,它都会为每个用户单独下载个人资料图片。出于这个原因,我开始使用NSCache来存储个人资料照片。这非常有效,现在延迟消失了。但是,如果有人更改了他们的头像怎么办?个人资料照片在后端为每个用户上传一张。我使用用户ID来引用这些个人资料照片。如果有人更改了他们的个人资料图片,它只会加载我在缓存中的图片,而不是他们的新图片。所以,我想每3小时左右清除一次IOS设备上的整个缓存。那会治愈一切。你如何每隔一段时间清