Tag: cocoa触摸

该类不是密钥编码兼容的密钥

目前我正在学习如何通过Jeff LaMarche的Beginning iPhone 4开发手册来编写iPhone代码,但遇到了一个问题,我看不出问题出在哪里。 我已经阅读了很多论坛上说,这是IBOutlets没有正确连接的问题,但我已经尝试了很多次,问题并没有消失,所以我在这里寻求帮助。 Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIViewController 0x4b3c2a0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key datePicker.'

调用loadView明确 – 好/坏?

显式调用loadView有没有什么坏处? 我必须点击服务器并获取要显示的数据,并根据此视图上的某些用户操作更改此数据。 我正在我的loadView方法中的服务器调用,并传递适当的参数。 现在,当用户条件发生变化时,我调用[self loadView]修改参数。 你在这里看到一些问题吗?

为什么一个崩溃日志象征性而不是另一个?

我有XCode Organizer中iPhone应用程序的两个崩溃日志。 两者都在20分钟内发生在同一台设备上,运行相同的应用程序版本。 一个已经被象征化了,另一个没有。 非符号日志有types和代码: Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x00000000, 0x00000000 而象征性的日志有types和代码: Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: KERN_INVALID_ADDRESS at 0x61656810 这足够的信息来解释为什么后者正确的象征,但前者不是?

FMDB executeUpdate DROP命令确实停止应用程序

我想在我的名为database.db的SQLite数据库文件中删除一个表。 使用后 NSLog(@"i show up in the console"); [db executeUpdate:@"DROP TABLE IF EXISTS `article`;"]; NSLog(@"i will not show up in the console"); 该应用程序停止在查询的位置。 在控制台中显示查询之前的NSLog。 在查询之后,NSlog直接显示在控制台窗口中。 另外,一个名为database.db-journal的临时文件在应用程序运行时在模拟器应用程序文件夹中不断创build和删除。 该应用程序不会崩溃,不会提供任何错误,不会继续…删除查询中的“IF EXISTS”不起作用,删除反引号不起作用,删除分号不起作用。 启用查询跟踪只显示FMDB正在处理我的查询,没有更多的显示。 我真的很困惑,为什么会发生这种情况。 我认为这个表在被删除前必须是空的,所以我添加了一个查询来删除它中的每个logging。 但是ID并不重要,该应用程序仍然陷入了drop-query。 我用尽了解决这个错误的可能性。 如果我在SQLite数据库浏览器2中执行drop命令,一切正常。 debugging器的进一步研究表明,FMDB封装进入无限循环,因为语句的返回值等于SQLITE_LOCKED常量,这意味着我要删除的表被locking。 在以前的查询中发送“UNLOCK TABLES”并不能解决这个问题。 为什么表被locking? 为什么从locking的表中删除logging将起作用?

CLLocationmanager:保存电池

我的新“正在进行的应用程序”使用CLLocationManager的一个实例出于多种目的。 为了使应用程序尽可能电池友好,位置服务应该只在需要时激活,并在数据刷新完成后立即停用。 对于我的目的来说,仅仅在10秒钟内只能获取一次位置数据就足够了。 (还没有确定确切的区间长度)。 我的问题是,这是“closures定位服务”最省电的方法? 仅使用“stopUpdatingLocation”方法并将CLLocationManager自己保存在内存中就足够了,还是需要释放整个实例,并在下一次刷新之前分配一个新实例?

转换AnyObject? string

我有一个返回AnyObject的函数? func aFunction(param:String) -> AnyObject? 我如何将其转换为string? 和string

'GPUImageOutput <GPUImageInput>'没有可见的@interface声明select器'imageFromCurrentlyProcessedOutputWithOrientation:'

我负责pipe理其他人在我公司创build的旧项目,现在我必须使用XCode 5.1进行一些更改 事情是,即使它一年前(2013年春)编译好,它现在不编译。 该项目包含GPUImage库子项目。 这是XCode产生的错误: 'GPUImageOutput <GPUImageInput>'没有可见的@interface声明select器'imageFromCurrentlyProcessedOutputWithOrientation:' 当我尝试编译这两行时: if( self.grayScaleOutput ) { photo = [grayscaleFilter imageFromCurrentlyProcessedOutputWithOrientation:UIImageOrientationUp]; } else { photo = [blendFilter imageFromCurrentlyProcessedOutputWithOrientation:UIImageOrientationUp]; } 我甚至让Xcode 5.1改变了我的项目的一些设置(它build议我这样做),但没有运气。 任何提示? 任何设置我需要激活? 一些ARC的苦难,它可能仍然在我的旧的代码行? 注意:我已经replace了我使用的1年前的GPUImage库,以及刚刚从GitHUB下载的GPUImage库。 也没有运气。

核心数据线程和locking争用问题

我目前正在编写iOS应用程序的同步引擎。 我正在编写的一种方法是重新加载数据function,在该function中,应用程序会重新下载用户的数据以及所有照片。 这是一个昂贵的操作(时间上),所以我创build了一个NSOperation子类SSReloadDataOperation 。 它下载数据,获取当前用户实体,从当前用户中删除所有现有的照片,并重新填充。 然而,尽pipe我认为这是线程安全的,但是有时在操作正在运行并且-currentUser从其他地方访问时,应用程序崩溃,大概是在尝试获取它时。 其他时候,UI有时会冻结,并在debugging器中暂停显示它总是停在-currentUser NSFetchRequest执行调用。 我如何使这个操作线程安全和primefaces性,使我可以下载和重新填充,而不阻塞主UI线程,仍然有-currentUser可访问? 在使用锁或体系结构方面有什么缺失的吗? 谢谢! 码: – (void)main { // Download the photo data [[SyncEngine defaultEngine] getUserPhotosWithCompletionBlock:^(NSMutableArray *photos) { if (photos) { // Create a new NSManagedObjectContext for this operation SSAppDelegate* appDelegate = [[UIApplication sharedApplication] delegate]; NSManagedObjectContext* localContext = [[NSManagedObjectContext alloc] init]; [localContext setPersistentStoreCoordinator:[[appDelegate managedObjectContext] persistentStoreCoordinator]]; NSNotificationCenter* notificationCenter = […]

内存警告和创buildPDF时崩溃

当生成一个大的PDF时,我的应用程序会向内存发出一个警告,然后在PDF的生成过程中崩溃。 PDF被绘制成网页视图,当页面达到一定数量(取决于设备)时,内存不足 我对这个问题的研究到目前为止让我明白我需要: 将UIGraphicsBeginPDFContextToData更改为IGraphicsBeginPDFContextToFile 创build一个合理的path到临时文件, 给那个函数, 将文件放到webview中加载。 完成后删除文件。 问题是,虽然我认为我只是在主要地方掌握它,但是我不知道如何去实现这个目标,或者完全理解它,以便在我的代码中实现它。 在这个问题上的build议非常appricated 我也打开任何其他的想法来阻止内存崩溃 @interface ICPDFPreviewController () @property (nonatomic, strong) Certificate *certificate; @property (nonatomic, strong) NSData *pdfData; @property (nonatomic) BOOL viewHasUnloaded; – (void)generatePdf; – (void)pdfDone:(NSData *)data; – (NSData *)createPdfWithPages:(NSArray *)pages; @end @implementation ICPDFPreviewController @synthesize certificate=_certificate; @synthesize scrollView=_scrollView; @synthesize webView=_webView; @synthesize pdfData=_pdfData; @synthesize viewHasUnloaded=_viewHasUnloaded; – (void)generatePdf { NSMutableArray *pagesArray […]

核心数据整数使用哪种整数types

核心数据有int16,int32和int64。 当在NSNumber窗体中使用这些窗体时,我应该使用NSInteger还是int(以及它们各自的NSNumber方法numberWithInt,numberWithInteger)。 我一直使用INT为int16和NSInteger为int32,但我不知道这是否是正确的。 我只想澄清一下。