Tag: objective c

如何asynchronous同步CoreData和REST Web服务,同时正确地将任何REST错误传播到UI中

嘿,我在这里为我们的应用程序的模型层工作。 一些要求是这样的: 它应该在iPhone OS 3.0+上工作。 我们的数据来源是一个RESTful Rails应用程序。 我们应该使用Core Data在本地caching数据。 客户端代码(我们的UI控制器)应该尽可能less地了解networking内容,并且应该使用Core Data API查询/更新模型。 我已经检查了构build服务器驱动用户体验的WWDC10会议117 ,花了一些时间检查Objective Resource , Core Resource和RestfulCoreData框架。 目标资源框架本身不与Core Data交谈,仅仅是一个REST客户端实现。 Core Resource和RestfulCoreData都假设你在代码中和Core Data交谈,他们解决了模型层背景中的所有细节。 所有目前看起来都不错,最初我通过核心资源或RestfulCoreData将覆盖所有上述要求,但是…有几件事似乎并没有正确解决: 在保存本地更新到服务器时,主线程不应该被阻塞。 如果保存操作失败,则错误应该传播到UI,并且不应该将更改保存到本地Core Data存储。 核心资源碰巧发出所有的请求到服务器,当您调用- (BOOL)save:(NSError **)error您的托pipe对象上下文,因此能够提供一个正确的NSError实例的底层请求到服务器失败不知何故。 但它会阻止调用线程,直到保存操作结束。 失败。 RestfulCoreData保持你的 – 保存-save:调用保持不变,并且不会为客户端线程引入额外的等待时间。 它只是注意NSManagedObjectContextDidSaveNotification然后发出相应的请求到通知处理程序中的服务器。 但是这样, -save:调用总是成功完成(当然,如果Core Data与已保存的更改一致,并且实际调用它的客户端代码无法知道保存可能无法传播到服务器,因为有些404或421或任何服务器端发生错误。 而且,本地存储变得更新了数据,但是服务器从来不知道这些变化。 失败。 所以,我正在寻找解决所有这些问题的可能的解决scheme/常见做法: 当networking请求发生时,我不希望调用线程在每个-save: call上阻塞。 我想以某种方式获取通知在用户界面中,一些同步操作出错。 如果服务器请求失败,我希望实际的Core Data保存失败。 有任何想法吗?

在委托属性声明中,'weak'和'assign'有什么区别

这是什么区别: @property (nonatomic, weak) id <SubClassDelegate> delegate; 和这个: @property (nonatomic, assign) id <SubClassDelegate> delegate; 我想为代表使用财产。

为应用程序找不到有效的“aps-environment”授权string

我试图configuration我的应用程序来支持推送通知,但不断得到这个错误:无法获得令牌,错误:错误域= NSCocoaErrorDomain代码= 3000“没有有效的'aps环境'授权stringfind应用程序”UserInfo = 0x1f818fc0 { NSLocalizedDescription =为应用程序find没有有效的“aps-environment”授权string} 我确实启用了我的应用程序来支持推送通知(仅在此时进行开发)。 我确实在启用推送通知后创build了configuration文件。 我的包标识符与configuration文件中显示的相同。 在我的configuration文件中有一个string:aps-environment 我确保在“代码签名标识”部分下的项目和目标中,所有值都被select为我的预configuration文件。 还有什么想法? 谢谢。

如何将Cocoapods与Swift项目整合?

正如苹果引入Swift这个他们的新编程语言,我想知道如何将它与通过CocoaPods提供的现有Objective-C库集成 ?

如何在Xcodedebugging器中查看NSDictionaryvariables的内容?

有没有办法通过Xcodedebugging器查看NSDictionaryvariables的键/值对? 以下是在variables窗口中完全展开的信息的范围: Variable Value Summary jsonDict 0x45c540 4 key/value pairs NSObject {…} isa 0xa06e0720 我期待它显示字典的每个元素(类似于数组variables)。

iOS – 如何以编程方式设置UISwitch

我想以编程方式设置我的UISwitch打开或closures。 我该怎么做? 我是一个iOS新手。

更改UIButton文本

所以我试图更新UIButton上的文字,当我点击它。 我正在使用以下行来更改文本: calibrationButton.titleLabel.text = @"Calibration"; 我已经validation了文本正在改变,但是当我运行该应用程序,然后单击该button时,它会立即变为“校准”,然后返回到默认值。 任何想法,为什么这可能会发生? 有什么样的刷新function,我需要打电话?

删除特定的本地通知

我正在开发基于本地通知的iPhone闹钟应用程序。 在删除闹钟时,相关的本地通知应该被取消。 但是,我怎样才能确定本地通知数组中的哪个对象将被取消? 我知道[[UIApplication sharedApplication] cancelLocalNotification:notification]方法,但我怎样才能得到这个'通知'来取消它?

从一位数的整数中创build一个两位数的string

如何在一个string中有一个两位数的整数,即使整数小于10? [NSString stringWithFormat:@"%d", 1] //should be @"01"

获取button按下UITableView单元格的行

我有一个表格控制器显示一行单元格。 每个单元格有3个button。 我已经为每个单元格的标签编号为1,2,3。 问题是我不知道如何find一个button被按下的单元格。 我目前只有一个button被按下时才能获得发件人的标签。 有没有办法获得单元格行号以及按下button时?