草庐IT

swift-keypath

全部标签

objective-c - 如何在 Swift 中创建指向自身的静态指针变量?

在Objective-C中,我经常使用staticvoid*作为识别标签的模式。有时,这些标签仅在该函数/方法中使用,因此将变量放在函数中会很方便。例如:MyObscureObject*GetSomeObscureProperty(idobj){staticvoid*constObscurePropertyTag=&ObscurePropertyTag;MyObscureObject*propValue=objc_getAssociatedObject(id,ObscurePropertyTag);if(!propValue){propValue=...//lazy-instantia

swift - 带有 Realm 的 Swift 中带有主键的新对象

背景:我对Swift非常陌生,但对一般编程也很陌生,所以提前致歉。我唯一真正的数据库经验是MySql,即使它不是那么热门。我正在通过构建一个基本的目标/习惯跟踪应用来学习Swift+Realm。任务:我有一个目标对象,其中包含一个名为“id”的主键。目标可能是“减肥”。我还有一个Streak对象,其中包括7次每日“签到”。用户设定一个目标,并每天签到。每个目标可以有多个“连续”,例如在一个7天的冲刺/连续冲刺之后,用户可以开始另一个。你也可以有多个目标。为了实现这一点,我试图复制目标的自动递增ID的功能,这也是一个主键。这也将记录在相应的Streaks中。我的问题:我遇到的问题是,当我

ios - 在 Swift 中是否可以在运行时从字符串执行代码?

我有一个项目列表,这些项目具有与之关联的条件。我想将这个项目列表及其条件存储在plist中,而不是将它们硬编码到.swift文件中。唯一的问题是需要一个与每个项目关联的函数来检查条件。这是硬编码的样子:letmyJobStep1=JobStep(heading:"MyHeading",description:"Thisisthedescription",warningText:"",condition_check:{()->Boolinreturn(self.trayColor==.Blue)||(self.trayColor==.Red)})letmyJobStep2=JobStep

swift - 观察者从未打电话

我有两个功能overridefuncviewDidAppear(animated:Bool){super.viewDidAppear(animated)NSNotificationCenter.defaultCenter().addObserverForName("personalDataDidLoad",object:self,queue:NSOperationQueue.mainQueue()){_inprint("Receivednotification")self.showPersonalData()}loadPersonalData()}funcloadPersonalDat

swift - 解码 Firebase base64 Swift 2.0

我正在尝试加载存储在Firebase服务器中的图像。我正在检查其他答案,但我找不到为什么在能够打印正确的字符串值后得到nil的原因:在我的应用程序中,我有以下数据结构:这里是我用来加载它的代码(nil值是评论中显示的值)letprofileDetailsRef=self.ref.childByAppendingPath("users/"+sessionUserID+"/details")profileDetailsRef.observeEventType(.Value,withBlock:{snapshotinself.txtUsername.text=sessionUserIDsel

swift - Realm 中具有可选 Int 类型的空数据的异常抛出

我第一次尝试使用Realm(0.98.1,通过Cocoapods,Xcode7.2),遇到了一个我不确定如何解决的小问题。我有一个名为Airport的模型类,它声明了一个属性letelevationFt=RealmOptional()我正在创建一组Airport对象并以下列方式持久化它们publicfunccacheDataToPersistanceStore(data:NSArray)->Bool{varsuccess=trueautoreleasepool{do{letrealm=tryRealm()realm.beginWrite()forobjectindata{guardle

swift - 协议(protocol)中的 associated(typealias) 类型和 Self 如何工作?

对不起,我是编程新手,我尽量表达我想问的问题。请原谅我。我在协议(protocol)中看到过类似的东西。protocolPro1{typealiasElement//...}protocolPro2:Pro1{typealiasElement=Self//...}Element在协议(protocol)中,这个Element是否相互关联?我不明白下面的表达式是什么意思:typealiasElement=Self非常感谢。 最佳答案 Pro1写这个protocolPro1{typealiasElement}您只是告诉我们将有一个名为E

swift - ( cocoa 错误 -1)尝试保存使用 AVCaptureSession 创建的视频时

我正在使用AVCapturesession生成视频,然后使用AVVideoCompositionCoreAnimationTool添加简单的叠加层。然后我使用AVAssetExportSession来输出文件。这一切似乎都有效,但是当我尝试使用PHPhotoLibrary(因为ALAssetsLibrary已贬值)将其保存到照片库时失败并显示消息:“Cantcompleteoperationcocoaerror-1”。在广泛使用Google并查看文档后,我无法弄清楚出了什么问题。如果有任何帮助,我们将不胜感激。funcvideoOutput(){videoToMake=AVAsset(

ios - 如何在 iPhone 4S Swift 的 UITextView 中动态调整文本大小

我的应用程序显示了一个字符串数组,该数组通过按下按钮进行迭代。它适用于除iPhone4S以外的所有设备。问题是一些字符串元素太长以适应UITextView,你必须滚动才能阅读它的其余部分,这是我不想要的。所以,我的问题是当它不适合所有字符串元素时,如何动态收缩属性文本以适应受约束的UITextView?让我知道这是否可能,谢谢大家。 最佳答案 当你可以使用UILabel时,你为什么要使用UITextView。UITextView没有自动缩放属性。使用UILabel您可以设置行数,它具有Autoshrink属性,您可以在其中设置Min

objective-c - Swift 2.0 和 objective-c 兼容方法返回带有参数 NSError 的 Bool

我正在开发一个使用objective-c框架的新项目,所有新代码都在Swift中。我遇到了一个有趣的兼容性问题。问题来自Swift2.0,其中objective-c中返回BOOL并采用NSError参数的任何方法都被转换为返回的方法Swift中的Void和throws。这种翻译的一个例子是NSManagedObjectContext现在在Swift中的保存方法:publicfuncsave()throws当从Swift调用代码并且实现也在Swift中时,这不是问题。我面临的问题是我不能(或不应该)在遵循相同模式的objective-c中修改的框架。在这种情况下,我正在实现在object