阻止iPhone应用在iPad上运行

我正在运送两个二进制文件; 一个用于iPhone / iTouch,另一个用于iPad。 这是同样的应用程序。 苹果公司是否确保用户永远不会在iPad上收到iPhone版本的应用程序? 如果是的话,我没有什么可担心的,但如果没有的话,我确实有问题。 我问的原因是iPhone应用程序将无法在iPad上正常工作,因为服务器知道这是一个iPad,并将提供iPad的高清内容,iPhone无法处理。 如果在iPad上运行iPhone应用程序以获得正确的资源,我宁愿不要破解我的应用程序发送服务器假设备types。 build议?

当用户点击UIWebView时,默认键盘是如何出现的?

我目前正在开发一个类似Mogok的自定义iOS浏览器。 当用户点击UIWebView中的任何文本input时,我需要更改默认的键盘。 我想知道当用户点击UIWebView中的任何input文本时系统如何显示键盘? 我怎样才能得到在UIWebView成为第一响应者的文本字段的引用? 我已经做了2晚黑:-)没有结果:-( 任何帮助将不胜感激。 问候Ranjan

Swift Closure中的返回types必须是Void的可选链接

我正在创build一个应该有自己的run()实现的脚本的双向链接列表( MSScript run() ,并且在他们准备好时调用下一个脚本( rscript )。 我想创build的一个脚本只是一个延迟。 它看起来像这样: class DelayScript : MSScript { var delay = 0.0 override func run() { let delay = self.delay * Double(NSEC_PER_SEC) let time = dispatch_time(DISPATCH_TIME_NOW, Int64(delay)) let weakSelf = self dispatch_after(time, dispatch_get_main_queue()) { weakSelf.rscript?.run() Void.self } } init(delay: Double) { super.init() self.delay = delay } } rscript是下一个要运行的脚本。 问题是,如果我删除dispatch_after的最后一行,它不会编译,这是因为从可选的链接run()更改返回types 。 […]

在swift中捕获无效用户input的exception

我正在尝试这是一个计算器的代码。 我如何处理无效的用户input? //解答:将头部桥接到Objective-C // https://github.com/kongtomorrow/TryCatchFinally-Swift 这是同样的问题,但在objc,但我想迅速做到这一点。 捕获NSExpression中的NSInvalidArgumentException 所有我想要显示的是一个消息,如果它不起作用,但现在我得到一个exception,当用户没有input正确的格式。 import Foundation var equation:NSString = "60****2" // This gives a NSInvalidArgumentException', let expr = NSExpression(format: equation) // reason: 'Unable to parse the format string if let result = expr.expressionValueWithObject(nil, context: nil) as? NSNumber { let x = result.doubleValue println(x) } else { println("failed") }

按索引移动数组中的元素

给定n个元素的数组,即 var array = [1, 2, 3, 4, 5] 我可以写一个扩展到Array所以我可以修改数组来实现这个输出: [2, 3, 4, 5, 1] : mutating func shiftRight() { append(removeFirst()) } 有没有一种方法可以实现这样一个function,可以将数组按任何索引(正数或负数)进行移位。 我可以使用if-else子句以命令式的风格来实现这个function,但是我正在寻找的是function实现。 该algorithm很简单: 将数组拆分成由索引提供的两个 将第一个数组附加到第二个数组的末尾 有什么办法来实现它的function风格? 我已经完成的代码: extension Array { mutating func shift(var amount: Int) { guard -count…count ~= amount else { return } if amount < 0 { amount += count } […]

如果NSAllowsArbitraryLoads设置为YES,App Store是否拒绝提交?

iOS 9涉及的新的ATS导致大量的http相关function停止工作。 我必须将所有http请求url添加到白名单中,或者我可以通过将NSAllowsArbitraryLoads设置为YES来禁用ATS。 如果NSAllowsArbitraryLoads被设置为YES是否有人知道App Store是否会拒绝提交?

Swift PNG图像以不正确的方向保存

如果在保存之前使用图像,则是正常的。 但是,如果我保存并在以后使用它是90度转向。 我怎样才能确保它不会横向保存? func saveEvent(_ center1: CLLocation, title2: String, imagePicked1: UIImage) { let data = UIImagePNGRepresentation(imagePicked1);/// let url = NSURL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent(NSUUID().uuidString+".dat") do { try data!.write(to: url!, options: []) } catch let e as NSError { print("Error! \(e)"); return } let image11 = CKAsset(fileURL: url!) self.eventRecord.setObject(image11 as CKAsset, forKey: "Picture") let publicData = CKContainer.default().publicCloudDatabase publicData.save(self.eventRecord, completionHandler: […]

在iPhone应用程序中调用exit(0)

在我的应用程序的某个时候,我已经做了这个exit(0) ,这使我的应用程序崩溃。 但是我还没有想到当执行这个方法时会调用什么方法。 我把信息放在: (void)applicationWillTerminate:(UIApplication *)application (void)applicationDidEnterBackground:(UIApplication *)application 但是这似乎没有被调用! 任何关于exit(0)完成时调用什么方法的想法?

在Swift中改变VC问题。 如何在标签栏控制器中的视图之间传递数据?

我有四个ViewController,我不使用UITabbedbar,因为这是更难以定制。 我使用模态赛格,但我认为内存消耗是过度的。 这是我的第一个和第二个VC的屏幕截图。 我必须使用正确的更改视图? 这是我使用的代码: override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) { if (segue.identifier == "second") { let secondVC = segue.destinationViewController as SecondViewController; } }

在iOS 7中强制横向ViewController

我在纵向模式下有十多个ViewController,但是无论设备的方向如何,我都需要在横向模式下强制一个ViewController。