获取Xcode 5来警告新的API调用

有一个Xcode 4.x的方法: #define __AVAILABILITY_TOO_NEW __attribute__((deprecated("TOO NEW!"))) __attribute__((weak_import)) #if __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_6_0 #undef __AVAILABILITY_INTERNAL__IPHONE_6_0 #define __AVAILABILITY_INTERNAL__IPHONE_6_0 __AVAILABILITY_TOO_NEW #endif 但是由于iOS 7 SDK Availabilitymacros已经改变,现在不再有效了,现在有更多的差异和选项: iOS 6 SDK的AvailabilityInternal.h: #define __AVAILABILITY_INTERNAL__IPHONE_6_0 __attribute__((availability(ios,introduced=6.0))) #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=6.0,deprecated=6.0))) #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=6.0,deprecated=6.1))) #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_NA __attribute__((availability(ios,introduced=6.0))) iOS 7 SDK: #define __AVAILABILITY_INTERNAL__IPHONE_6_0 __attribute__((availability(ios,introduced=6.0))) #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=6.0,deprecated=6.0))) #if __has_feature(attribute_availability_with_message) #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=6.0,message=_msg))) #else #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=6.0))) #endif […]

Firebase数据库不等于请求 – 替代解决scheme(适用于iOS)

我正在使用具有Json结构的Firebase数据库来pipe理用户的评论。 { "post-comments" : { "post-id-1" : { "comment-id-11" : { "author" : "user1", "text" : "Hello world", "uid" : "user-id-2" },…. } 我想拉所有评论,但不包括当前用户的评论。 在SQL中,这将被翻译成:从后注释select*其中id!=“user-id-2” 据我所知,Firebase数据库不提供基于值的存在排除节点的方法(即:user id!= …)。 因此,是否有其他解决scheme来解决这个问题。 可以通过更改数据库结构,也可以在数据加载完成后处理数据源。 对于后者,我使用了FirebaseTableViewDataSource。 有没有办法在查询后过滤数据? 非常感谢

边界检测纸张opencv

我在openCV中是新的,我已经检测到纸张的边缘,但是在边缘画线之后,我的结果图像会模糊,如何在纸张的边缘上绘制线条,这样我的图像质量不受影响。 我在想什么 我的代码如下。 非常感谢。 -(void)forOpenCV { if( imageView.image != nil ) { cv::Mat greyMat=[self cvMatFromUIImage:imageView.image]; vector<vector<cv::Point> > squares; cv::Mat img= [self debugSquares: squares: greyMat ]; imageView.image =[self UIImageFromCVMat: img]; } } – (cv::Mat) debugSquares: (std::vector<std::vector<cv::Point> >) squares : (cv::Mat &)image { NSLog(@"%lu",squares.size()); // blur will enhance edge detection Mat blurred(image); medianBlur(image, blurred, 9); Mat gray0(image.size(), […]

iOS Facebook SDK 4会话

我遇到了iOS的新FacebookSDK的问题。 我可以成功login并获取必要的信息,但是当我再次打开我的应用程序时,我打算跳过login过程,正在validation的会话为空。 这是我的AppDelegate: class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { self.window = UIWindow(frame: UIScreen.mainScreen().bounds) self.window!.rootViewController = LogInViewController() self.window!.makeKeyAndVisible() FBSDKProfile.enableUpdatesOnAccessTokenChange(true) return FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions) } func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool { return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url, sourceApplication: sourceApplication, annotation: […]

有什么办法来检查一个应用程序已安装或更新?

我已经发送了我的应用程序的一个版本。 为进一步的版本,我需要做一些validation,以检查它是一个全新的安装或更新(我不能使用NSUserDefaults或文档目录,因为我的第一个版本已经出货)。

如何从Xcode 8中的Assets.xcassets添加不同屏幕大小的图片?

我为我的login屏幕创build不同大小的背景图像。 我指的是苹果链接https://developer.apple.com/ios/human-interface-guidelines/graphics/launch-screen/ 但我没有做启动屏幕,我只是想添加背景login屏幕。 我想知道哪个是1x,2x和3x? 另一个问题是当我创build图像集,图像的大小应该拖到哪个地方。 我不知道这件事。 或者我们只需要3张图片(通用行)? 那么,如何为景观图像? 我应该把这个放在哪里?

为什么 .bounds]没有返回全屏大小?

我有一个应用程序,是在新的iPhone 5视网膜宽屏设备之前创build的。 现在我正试图支持这个高清宽屏。 我调整主ViewController和主窗口XIB文件,以便它们被设置为Autolayout。 我可以validation通过IB显示的宽度/高度显示为320 x 568。 但是,当我在模拟器中运行时,我可以看到高度仍然是480.用于打印高度(和宽度)的代码在主视图控制器的viewWillAppear方法中: [UIScreen mainScreen].bounds] 为什么size.height仍然是480而不是568?

NSPredicate格式中第二个参数的“无效谓词:无RHS”

这是我的NSPredicate : print(searchTextField.text!) let predicate = NSPredicate(format: "student.schoolClass.id = %d AND (book.title CONTAINS[cd] %@ OR student.username CONTAINS[cd] %@)", currentSchoolClass.id, searchTextField.text!, searchTextField.text!) 接下来我要做的是: fetchedResultsController.fetchRequest.predicate = predicate print(fetchedResultsController.fetchRequest.predicate!) try! fetchedResultsController.performFetch() //here is the crash 控制台输出是: j student.schoolClass.id == 1 AND (book.title CONTAINS[cd] nil OR student.username CONTAINS[cd] "j") 和崩溃信息是: CRASH: Invalid predicate: nil RHS 这不是很奇怪吗?

Swift(beta 3)“NSDictionary? 不符合协议“可衡量”“

自从更新到最新的Xcode 6 DP3以来,我在Swift代码中已经有了一些警告和错误。 大多数已经通过采用新改变的语法来解决,但是有一个似乎很奇怪的错误。 下面的代码给出错误Type 'NSDictionary?' does not conform to protocol 'Equatable' Type 'NSDictionary?' does not conform to protocol 'Equatable' : if (launchOptions != nil && launchOptions![UIApplicationLaunchOptionsRemoteNotificationKey] != nil) { 有没有人有办法解决吗? 我可能忽略这里简单的东西..! 谢谢

在swift 2.0中一次显示文本一个字符

新的Swift 2.0; 试图学习它,对animation感兴趣,并试图编写一些代码在屏幕上一次显示一个字符的消息。 我写这个,它的工作原理,但我忍不住,但我可以不用CALayers和/或alpha值做什么? 或者是一些有生气的小玩意儿,更值得一提的东西; 这感觉看起来有点笨重,真的很像1977年。 import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. let supertext = "A long time ago, in a galaxy far, far away …" let round = supertext.characters.count for i in 0…round { let delay […]