草庐IT

moduleName-Swift

全部标签

swift - NSCalendar.startOfDayForDate(日期 :) equivalent for iOS 7 with non-optional return type

是否可以更改NSDate对象,使结果等同于NSCalendar.startOfDayForDate(date:)?该方法仅适用于iOS8及更高版本,但我正在寻找适用于iOS7的方法。我看过两种方法:NSCalendar.dateFromComponents(comps:)如下所述:NSDatebeginningofdayandendofday.例如,像这样:classfuncstartOfDay(date:NSDate,calendar:NSCalendar)->NSDate{if#available(iOS8,*){returncalendar.startOfDayForDate(d

swift - 用于在 UICollectionView 中下载和显示图像的 UIImageView 扩展

我制作并扩展了UIImageView,它允许我异步下载图像,然后根据它们的特定索引(CollectionView中的IndexPath)将它们分配给它们的ImageView。效果很好,唯一的问题是:我在快速滚动和停止时仍然看到显示的错误图像。谁能帮帮我?这是我的代码://UIImageView扩展:extensionExtendedUIImageView{funcdownloadFrom(linklink:String,contentModemode:UIViewContentMode,imageIndex:Int){if(NSFileManager.defaultManager().

swift - 当 UIButton 聚焦时,Siri Remote 的菜单按钮不退出应用程序

我正在覆盖pressesBegan以接收Select按键。当焦点位于UIButton上时,SiriRemote的菜单按钮不会退出我的应用程序。如果没有UI元素获得焦点,菜单按钮将按预期工作。当焦点位于UIButton上时,如何接收菜单按钮按下?overridefuncpressesBegan(presses:Set,withEventevent:UIPressesEvent?){foriteminpresses{ifitem.type==.Select{print("Click")}ifitem.type==.Menu{print("MenuButton")super.pressesB

swift - NSDateFormatter 方法

我正在读取一个JSON对象,它包含一个when字段。when字段的格式为“m-d-yyyyh:m:s”例如,日期字符串可以是“5-25-20165:30:2”由于我不知道m、d、h、m和s的长度,如何从这些字符串中获取NSDate?编辑:使用评论中的一种工具,我取得了一些进展。该网站正确标识了日期(时移增加了6小时,但我可以解决这个问题)。但是,我在设备上仍然遇到问题。letdateFrmtr=NSDateFormatter()dateFrmtr.dateFormat="MM-dd-yyyyHH:MM:SS"dateFrmtr.locale=NSLocale(localeIdentif

ios - Swift Memoization 调用语法说明

要实现递归函数的内存版本,需要将函数声明为非变异变量(根据WWDC2014-AdvancedSwift)。例如下面是斐波那契函数的实现:letfibonacci=memoize{(fibonacci:Int->Double,n:Int)inn谁能解释一下Swift中发生了什么?例如,在上面的代码片段中,Swift是如何知道fibonacci只接受一个参数的?编译器如何解决这个问题?我们凡人如何解决这个问题?语法表达式在编译器语法(NormalForm/CFG)中是什么样子的? 最佳答案 memoize函数的签名(从thatWWDCt

ios - Swift 模型类错误处理

我使用以下方法来初始化带有错误处理的模型类。但是每当init方法在swift中被抛出时,我都无法从ObjC代码访问。projectname-Swift.h头文件中未创建声明。没有“抛出”,它就完美无缺。init?(dictionary:NSDictionary?)throws{ifletdictionary=dictionary{//Parsing}else{throwMyError.DictionaryNil("NilDictionary")}}我在这里遗漏了什么吗?我的模型类是NSObject的子类,它只有一个init方法。 最佳答案

ios - swift 如何将 SKEmitterNode 添加为 SKSpriteNode 后面的烟雾?

我正试图在我的宇宙飞船后面放一缕烟雾。我将烟道作为发射器节点计算出来,但我似乎无法将发射器连接到宇宙飞船。我不明白为什么这行不通。IE。发射器根本没有出现在屏幕上:varspaceShip:SKSpriteNode?spaceShip=SKSpriteNode(imageNamed:"ship1.png")spaceShip!.position=CGPoint(x:Int(arc4random_uniform(UInt32(self.size.width))),y:Int(arc4random_uniform(UInt32(self.size.height))))lettrailEmm

ios - 对于 iOS 版 Swift,我们应该做多少清理工作?

作为一名新开发人员,我有点不确定在iOS上使用Swift后我们应该清理多少。有很多不同的信息,因为自iOS开始以来这也发生了很大变化。因此,当我们拥有静态View并使用Storyboard时,我觉得一切都为我们清理干净了,我们(几乎)不需要做任何事情。但是当我根据用户点击动态创建View时呢?如果有必要,清理引用的最佳方法是什么?现在我正在做的事情就像我在Android中所做的那样,只是在我创建一个新的View实例之前将我的全局引用设置为nil等。我读过这应该像这样完成:myView?.removeFromSuperview() 最佳答案

swift - MKAnnotation协议(protocol)继承

我需要创建一个继承自MKAnnotation的协议(protocol):protocolAnnotable:MKAnnotation{...}classAnnotation:NSObject,Annotable{vartitle:String?varcoordinate:CLLocationCoordinate2Dinit(title:String,coordinate:CLLocationCoordinate2D){self.title=titleself.coordinate=coordinate}}当我向mapView添加几个注释时没有问题。mapView.addAnnotati

swift - 如何从 ViewController 或其他地方调用或触发 AppDelegate 中的通知功能?

我如何调用ViewController、appDelegate或其他地方的这种方法:funccontactDelete(notification:NSNotification){}我必须在appDelegate里面调用它`didFinishLaunchingWithOptions`hereorinsideotherclasses:funcapplication(application:UIApplication,didFinishLaunchingWithOptionslaunchOptions:[NSObject:AnyObject]?)->Bool{//Overridepointf