Tag: 迅速

检查UITextField中的更改

我试图做一个应用程序,检查UITextField中的文本,并做出响应写在里面的东西。 我可能有用户input他们的input,然后按下button。 我希望能够在应用程序不响应的情况下不断检查文本字段。

播放完成后更改button图像

当我单击播放button时,发件人button发生变化,但是当我在桌面视图中单击另一个button时,button第一个button图像不会变为播放 @IBAction func playSound(sender: UIButton) { if self.player != nil && self.player.playing { player.stop() sender.setImage(UIImage(named: "play.png"), forState: UIControlState.Normal) } else { sender.setImage(UIImage(named: "pause.png"), forState: UIControlState.Normal) } }

推送通知不在后台iOS中接收

我正在通过GCM在我的项目中推送通知。 我的应用程序能够在前台收到通知,但不能在后台收到通知。 我在方法里面收到一条消息 func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) 当应用程序在前台,但我没有得到任何调用的方法 func application( application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject], fetchCompletionHandler handler: (UIBackgroundFetchResult) -> Void) 当应用程序在后台模式。 我在互联网上search了很长时间,才知道这是我收到的有效载荷格式的问题。 我收到的有效载荷看起来像 [通知:{“body”:“任何东西”,“标题”:“任何标题”},优先级:高,content_available:true,至:kcF23gblKok ….,collapse_key:do_not_collapse,from:7812 ….] 任何人都可以build议我有效载荷的正确格式?

将一个variables从一个视图控制器传递给另一个视图控制器

我新来的迅速语言,知道这个问题是重复的。我发现了几个类似的问题和答案,但我无法找出问题。 我想将scanStringvariables的值从ScanViewController传递给ResultViewController。 ScanViewcontroller如下: import UIkit class ScanViewController: UIViewController { var detectionString : String! override func viewDidLoad() { super.viewDidLoad() detectionString = “SomeDetectedString” } override func prepareForSegue(segue: UIStoryboardSegue,sender: AnyObject!) { if (segue.identifier == "MySegue") { var svc = segue.destinationViewController as ResultViewController; svc.detectedString = detectionString } } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } } ResultViewController如下所示: import UIkit class […]

用于保存核心数据的NSPersistentContainer并发性

我已经阅读了一些关于这个的博客,但是我仍然对如何使用NSPersistentContainer performBackgroundTask创build实体并保存它感到困惑。 通过在performBackgroundTask() { (moc) in }块中调用便利方法init(context moc: NSManagedObjectContext)创build一个实例后,如果我检查container.viewContext.hasChanges这将返回false,并说没有什么可以保存,如果我调用保存moc (为这个块创build的背景MOC)我得到像这样的错误: fatal error: Failure to save context: Error Domain=NSCocoaErrorDomain Code=133020 "Could not merge changes." UserInfo={conflictList=( "NSMergeConflict (0x17466c500) for NSManagedObject (0x1702cd3c0) with objectID '0xd000000000100000 <x-coredata://3EE6E11B-1901-47B5-9931-3C95D6513974/Currency/p4>' with oldVersion = 1 and newVersion = 2 and old cached row = {id = 2; … }fatal error: Failure to save […]

从Swift NSObject子类遵循Objective-C协议的问题

这段代码在Swift 1.1中绝对正常 // Obj-C @import Foundation; @protocol HashableObject <NSObject> – (NSUInteger)hash; @end // Swift import Foundation @objc class Object: NSObject, HashableObject { func hash() -> UInt { return 0 } } 然而,在最新的Swift 1.2和Xcode 6.3beta2中,编译器抱怨Method'hash Method 'hash()' overrides Objective-C method 'hash' from superclass 'NSObject' 这是一个错误,或者其他的东西已经根本改变了,代码是错的? 有没有任何解决办法呢? 在我的代码中有很多东西需要符合Objective-C库中的某些协议,并且除了等待下一个Swift版本之外,基本上没有任何明显的解决scheme。

swift类作为参数没有.self

我写了一些函数(Swift 2.1,XCode 7.1.1): public func test1<T:UIView>(type: T.Type) -> T { print(type.dynamicType) return type.init() } public func test2<T:UIView>(type: T.Type)(_ n: Int) -> T { print(type.dynamicType) return type.init() } public func test3<T1:UIView, T2:UIView>(type1: T1.Type, _ type2: T2.Type) { print(type1.init()) print(type2.init()) } public func test4<T:UIView>(type: T.Type, _ n: Int) { print(type.init()) print(n) } public func test5<T:UIView>(n: Int,_ type: […]

iOS启动屏幕代码不运行

我听说了xcode 6带来的新function,可以让你制作一个故事板作为启animation面。 现在.. 有没有办法通过视图控制器来控制启动屏幕故事板上的UI元素? (显示加载屏幕或其他东西) 我试了一下,我只是在控制器的viewdidload上做了一个println("Here's the view loaded on the loadingscreen")屏幕上println("Here's the view loaded on the loadingscreen") ,这个控制器被引用到启animation面故事板的视图中,但是根本没有输出。 我究竟做错了什么?

当应用程序处于后台时,将Firebase侦听器保留在内存中

我一直在尝试使用Firebase侦听器来触发本地通知。 我发现一篇文章正好说明了我正在尝试解决的大部分问题,但是我没有评论这篇文章的声望,似乎也没有任何迹象表明如何实现其他任何我想要的内容。 原来的海报说这个。 我想到了! 我必须使用不同的方法,但是我可以让我的Firebase数据库观察者在后台触发通知。 只要包含数据库观察者的对象没有从内存中释放,它将继续观察和触发。 所以我创build了一个包含静态数据库对象属性的全局类,如下所示: class GlobalDatabaseDelegate { static let dataBase = DataBase() } 这是我对我自己的项目做些什么感到困惑的地方。 我的理解是我必须创build一个类似于DataBase()的类,它包含我的数据库引用。 问题是我不明白如何创build将包含数据库侦听器的类对象。 举例来说,我的参考是: let userRef = FIRDatabase.database.reference().child("users") 我想观察添加到数据库的任何用户,然后触发本地通知。 我能够编写代码来做到这一点,只是不知道如何将其包含在自己的对象类,然后使其静态。 原谅我有点慢。 任何帮助将非常感激。 其余的post如下: 我还将DataBase类扩展为UNUserNotificationCenterDelegate,以便它可以像这样发送推式通知: extension DataBase: UNUserNotificationCenterDelegate { func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) { print("Tapped in notification") } func userNotificationCenter(_ center: […]

iOS Swift:无法将值types“__NSCFNumber”转换为“NSString”

我从我的Firebase数据库(JSON数据库)中检索数字值,然后将此数字显示到textField ,但是当我尝试显示该数字时出现此错误。 无法将值types“__NSCFNumber”转换为“NSString” 我怎样才能正确地将检索到的值转换为一个string,考虑到这个值可能会改变之间的string和数字,当我检索它。 这是我的代码: let quantity = child.childSnapshot(forPath: "quantity").value // Get value from Firebase // Check if the quantity exists, then add to object as string. if (!(quantity is NSNull) && ((quantity as! String) != "")) { newDetail.setQuantity(quantity: quantity as! String) }