Tag: 快速

在UIAlertController SWIFT中为每个图像添加一个animation图像

我有一个函数来显示一个UIAlertController。 在标题和文本下面,我想显示每个图像的animation图像。 我有13个图像循环。 func alertDownloadInProgress(text:String, sender:UIViewController) -> UIAlertController { var alert = UIAlertController(title: "Alert", message: text, preferredStyle: UIAlertControllerStyle.Alert) sender.presentViewController(alert, animated: true, completion: nil) return alert } 是否有可能使用UIAlertController或我必须完全自定义我的popup?

在主线程上运行closures

我创build了一个类,比开发人员更容易实现select器视图。 在UIPickerView数据源方法中,我从闭包中返回值。 例: func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int { return pickerNumberOfRows!(component: component) } 我对所有的数据源方法使用相同的东西。 当我运行应用程序,它显示屏幕上的select器没有数据。 问题是我从闭包接收数据,而这些闭包在主线程上没有运行。 有没有办法在主线程上运行该闭包,并确保它返回一个适合数据源函数返回值types的值? (例如,从上面的例子来看,闭包将返回一个Int) 编辑: 我知道使用dispatch_async。 但是,在我的情况下,它不会帮助我。 假设我创build了一个在主线程上运行闭包的函数,并且需要返回值如下所示: func closureOnMainThread()->Int{ dispatch_async(dispatch_get_main_queue()) { // Run your code here return self.pickerNumberOfRows!(component: 0) } return 0 } 但是,在返callback度块内部的值之前,返回0的函数存在一个问题。 编辑2:弄清楚事情。 我的代码包含一个自定义类的select器和一个UIViewController实现它: class CustomPickerView: NSObject, UIPickerViewDelegate, UIPickerViewDataSource { var pickerNumberOfRows: ((component: Int)->Int)? //MARK: […]

HKObserverQuery后台传递的逻辑是什么?

我需要我的应用程序在HealthKit和我们的数据库之间进行同步。 我只是无法将自己的头围绕在确定HKObserverQueries如何以及何时运行updateHandlers的逻辑上。 我需要各种不同的样本types的数据,所以我假设我需要每个人的观察员查询。 对? 根据苹果关于functionenableBackgroundDeliveryForType,“ HealthKit唤醒您的应用程序,每当指定types的新样本保存到商店” 。 但是,如果我启用后台交付和执行观察者查询血糖和体重,他们都似乎运行更新处理程序,只要我在健康应用程序中的任何一个input数据。 即使在仅为其中一种样本types启用后台交付时,这也会发生。 为什么? func startObserving(completion: ((success: Bool) -> Void)!) { let sampleTypeBloodGlucose = HKObjectType.quantityTypeForIdentifier(HKQuantityTypeIdentifierBloodGlucose)! let sampleTypeWeight = HKObjectType.quantityTypeForIdentifier(HKQuantityTypeIdentifierBodyMass)! // Enable background delivery for blood glucose self.healthKitStore.enableBackgroundDeliveryForType(sampleTypeBloodGlucose, frequency: .Immediate) { (success, error) in if error != nil { abort() } } // Enable background delivery for weight self.healthKitStore.enableBackgroundDeliveryForType(sampleTypeWeight, frequency: […]

Swiftunit testing – 如何声明一个CGColor是它应该是什么?

使用Xcode V7.2。 试图进行unit testing,需要validation是否设置了正确的颜色,并得到这个消息: Cannot invoke 'XCTAssertEqual' with an argument list of type '(CGColor, CGColor)' 我如何主张一个CGColor是它应该是什么?

预取后从高速caching中采集图像

我正在使用Kingfisher框架来预取图像。 到Kingfisher框架的链接是: https : //github.com/onevcat/Kingfisher 这是我写的代码: func downloadImages() { if(self.albumImagePathArray.isEmpty == false) { //dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), { let urls = self.albumImagePathArray.map { NSURL(string: $0)! } let prefetcher = ImagePrefetcher(urls: urls, optionsInfo: nil, progressBlock: nil, completionHandler: { (skippedResources, failedResources, completedResources) -> () in print("These resources are prefetched: \(completedResources)") }) prefetcher.start() } } 我不确定如何使用这个框架,因为我对App开发很陌生。 一旦我预取了图像,如何从caching中获取这些预取图像。 我想从caching中select这些图像,并把它们放入一个UIImage数组中。 以前我没有从caching中select,但我每次都加载URL,并把它们称为albumImagePathArray,通过contentsOfURLstring数组我将它转换成UIImage,因此它可以被放入albumImages中,如下面的代码所示: var […]

用基于百分比的颜色填充UIView

我有一个UIView UIView内UIViewController与高度= 149.0和宽度= 123.5。 我用这个颜色来填充这个UIView,并且我根据从一个剩余url的百分比响应来设置要填充的颜色的高度。 如何填充整个视图以上面提到的尺寸为100%和不同的值。 任何帮助将不胜感激。 谢谢

如何在Swift中unit testing这个自定义的UITextField?

我已经创build了一个像这样的自定义UITextField import Foundation import UIKit class NoZeroTextField: UITextField, UITextFieldDelegate { required init(coder aDecoder: NSCoder) { super.init(coder: aDecoder) self.delegate = self } func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool { if (string == "0" ) { //ignore input return false } return true } } 我正在尝试编写类的unit testing,但问题是与NSCoder实例传递给构造函数。 我无法实例化或将其设置为零。 我怎样才能unit testing这个类?

Swift支持无效:SwiftSupport文件夹在Xcode 7中缺less错误

我正在尝试将AdHoc分发configurationfile upload到iTunesConnect。 我的应用程序编码在Swift 2.我的Xcode版本是7.0。 该应用程序上传没有任何错误。 但是过了一段时间,我收到苹果公司的Apple ID邮件,内容如下: 亲爱的开发者,我们已经发现您最近交付的“TDGApp”有一个或多个问题。 要处理您的交付,必须更正以下问题:无效的Swift支持 – 缺lessSwiftSupport文件夹。 使用当前的公共(GM)版本的Xcode重新构build您的应用程序,然后重新提交。 一旦这些问题得到纠正,您可以重新发送更正的二进制文件。 问候,App Store团队 我已经设置了标志embedded式内容在生成设置中包含Swift为YES。 我可以看到存档中的SwiftSupport文件夹(显示包内容),但无法看到ipa(有效内容)中的SwiftSupport文件夹。 因此,我无法将我的应用程序上传到AppStore。 请提出一些解决scheme。

在需要之前,必须从模块“Darwin.POSIX.sys.types”中导入“u_char”声明

我在我的Swift框架中导入了“if_dl.h”,以便像这样使用sockaddr_dl: module net [system] [extern_c] { module if_dl { umbrella header "/Applications/Xcode_7.3.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/net/if_dl.h" module * {export *} } } 现在我得到这个错误: 在需要之前,必须从模块“Darwin.POSIX.sys.types”中导入“u_char”声明 我试图在类代码中添加“导入达尔文”,但这不能解决问题。

为所有设备设置常量

我试图设置iPhone(4,5,6 …)和iPad之间的常数,但我不能做iPhone 4和iPhone 6之间的差异,所以如何做?