草庐IT

swift-keypath

全部标签

swift - 为什么我不能在具有多个 UIControlState 的 UIButton 上调用 setTitle?

我花了几个小时才发现button.setTitle(buttonTitle,for:[.normal,.selected])不同于:button.setTitle(buttonTitle,for:.normal)button.setTitle(buttonTitle,for:.selected)当在setTitle函数中使用多个UIControlState时,我的标题永远不会显示,并且在我checkout它们时被设置为nil。有一些方法可以从titleLabel访问它们,但是通过大量的故障排除,结果非常奇怪。我用titleLabel、currentTitle、isHidden、isSe

Swift UiTableView 不重新加载搜索结果

我有一个奇怪的问题,由于某种原因,我的UITableView在执行搜索后没有重新加载。控制台打印出正确过滤的数据,但表格根本没有改变。我从来没有遇到过这个问题,所以我首先尝试了自然想到的解决方案:在主队列中尝试了tableView.reloadData()退出Xcode,清理构建,重新安装清除派生数据目录我在SO中发现了几个类似的问题,但我看到的所有解决方案都是我尝试过的,主要是在主队列中重新加载tableview。希望也许我只是在我的代码中遇到了问题或者我遗漏了什么。我正在运行Xcode8.3.3importUIKitclassCategoriesViewController:UIV

ios - 在 iOS 中,使用 Swift,你如何获得 iPhone 启动的时间?

在核心运动中,数据在继承自CMLogItem的类中返回,该类具有timestamp属性。timestamp是一个TimeInterval,即自设备启动以来的时间。如何获取设备启动时间? 最佳答案 从评论中,我能够找到ProcessInfo.processInfo.systemUptime,这是自上次启动以来的时间。由此,和Date(),我可以通过以下方式获取开始时间:time_of_last_boot=Date()-ProcessInfo.processInfo.systemUptime

swift - Vapor 2,Fluent 模型子类

我正在使用Vapor2并尝试创建非最终模型来对其进行子类化。可能吗?我有以下抽象模型代码:classMongoObject:Model,JSONRepresentable{letstorage=Storage()letcreationDate:Dateinit(){creationDate=Date()}requiredinit(row:Row)throws{creationDate=tryrow.get(KeyPath.creationDate)}funcmakeRow()throws->Row{varrow=Row()tryrow.set(KeyPath.creationDate,

swift - 当用户已经通过身份验证时,它会在转到 MainController 之前显示 LoginViewController 大约半秒钟

我是swift世界的新手,我正在使用Firebase功能开发我的应用程序。我遵循了Firebase文档中的步骤,并设法正常实现身份验证Controller,除了一个我觉得很奇怪的细节。当用户已经通过身份验证时,它会在转到MainController之前显示LoginViewController大约半秒钟。那是对的吗?如果用户已经登录,我希望应用程序直接转到MainController。谢谢。遵循代码:classLoginViewController:UIViewController{@IBOutletweakvartextFieldPassword:UITextField!@IBOut

swift - 拳击计数/延迟/定时器

我创建了一个拳击模拟,现在要回去添加动画。现在,我正在添加一个“Ref'sCountup”来增加悬念。我尝试了很多事情,但没有一个得到我想要的。我尝试了:Thread.sleep(forTimeInterval:1)knockdownNumber.text="\(knockdownNumberInt)"和sleep(1)knockdownNumber.text="\(knockdownNumberInt)"那些暂停了用户界面。所以他们确实等待了适当的时间,但没有更改我的文本。还有一些只计算一次(即1、3或1、8)。DispatchQueue.main.asyncAfter(deadli

swift - Swift 中的 CFSocket(四)

我尝试建立到TCP服务器的连接,不幸的是没有成功。这是我的实际方法。有谁知道,错误在哪里?我在CFSocketConnectToAddress收到错误(我收到.error结果,因此我的代码在连接打印时导致错误)。有什么想法吗?host="192.168.0.20"port=8888socket=CFSocketCreate(kCFAllocatorDefault,AF_INET,SOCK_STREAM,IPPROTO_TCP,CFSocketCallBackType.readCallBack.rawValue,{(socket:CFSocket?,callBackType:CFSock

swift - 有什么方法可以弄清楚为什么 Swift 中的不同编写会导致编译时间如此巨大的差距?

有两种不同的写法:funcdicFuncA()->Dictionary{return["a":"ooo","b":30,"c":[1,2,3],"d":2.33]}和funcdicFuncB()->Dictionary{letdic:[String:Any]=["a":"ooo","b":30,"c":[1,2,3],"d":2.33]returndic}将“-Xfrontend-debug-time-function-bodies”添加到OtherSwiftFlags时:我们可以得到函数的编译时间:dicFuncA的编译时间是dicFuncB的大约54倍!这是为什么?可能是类型检查的

php - URL Percent 只对 PHP 中的查询进行编码,就像在 Swift 中一样

我想在PHP中以与Swift中相同的行为对URL进行编码,这里是Swift示例:letstring="http://site.se/wp-content/uploads/2015/01/Hidløgsma.jpg"letencodedString=string.addingPercentEncoding(withAllowedCharacters:.urlQueryAllowed)结果:http://site.se/wp-content/uploads/2015/01/Hidl%25F8gsma.jpg如何在PHP中获得相同的结果,即仅对查询进行编码并使用示例字符串返回相同结果的函数。

swift - 使用 NSPredicate 对 TableView 中的核心数据进行排序(Swift)

我是Swift中CoreData的新手,需要帮助使用NSPredicate。我目前在我的应用程序中有一个表格View和一个搜索栏。我还有一个名为Item的实体,其属性为过敏原(字符串)。我想过滤此TableView,以便仅当searchBar.text等于Item.allergen时才显示单元格。funcattemptFetch(){letfetchRequest:NSFetchRequest=Item.fetchRequest()letdateSort=NSSortDescriptor(key:"created",ascending:false)lettitleSort=NSSort