//设置通知
[[NSNotificationCenter defaultCenter]
addObserver:self
selector:@selector(dataChanged:)
name:NSManagedObjectContextDidSaveNotification
object:context];
Run Code Online (Sandbox Code Playgroud)
//后来
- (void)dataChanged:(NSNotification *)notification{
NSDictionary *info = notification.userInfo;
NSSet *insertedObjects = [info objectForKey:NSInsertedObjectsKey];
NSSet *deletedObjects = [info objectForKey:NSDeletedObjectsKey];
NSSet *updatedObjects = [info objectForKey:NSUpdatedObjectsKey];
Run Code Online (Sandbox Code Playgroud)
无论如何要从updatedObjects确定哪些字段实际更改了?
谢谢,迈克尔
这里有一个问题:Xcode 4.5破坏了XIB?说明了xcode 4.5创建无法在ios5上运行的nib文件的问题和解决方案.
有没有人有一个解决方案来阻止自动布局复选框默认为打开?我担心在开发过程中,我会忘记取消选中该框.

我知道Core Data不是一个数据库,并且存在许多差异.这是一个吗?
在数据库中,我通常会有以下内容
A - >> B - >> C
"A"有很多"B",有很多"C"
查询"给我所有有c.attr ='X'的A很容易写成:
select * from a, b, c where a.id = b.aid and b.id = c.bid and c.attr = 'X'
Run Code Online (Sandbox Code Playgroud)
在Core Data中,我想做同样的事情,但使用谓词如:
NSPredicate *predicate =
[NSPredicate predicateWithFormat:@"ANY bs.cs.attr = %@", "X"];
[frequest setEntity:entityA];
[frequest setPredicate:predicate];
Run Code Online (Sandbox Code Playgroud)
这样做会导致错误:'NSInvalidArgumentException',原因:'这里不允许多对多键'
我是否正确解释为什么数据库调用多表连接存在限制?
我用Google搜索,无法找到明确的答案.
我目前对此查询的解决方案如下:
NSPredicate *predicate =
[NSPredicate predicateWithFormat:@"ANY cs.attr = %@", "X"];
...
NSArray *bs = //execute fetch
for (B *b in bs) {
//add b.a into an array
}
//return array
Run Code Online (Sandbox Code Playgroud)
有没有更好的办法?提前感谢您的考虑.
我在加载时显示带有搜索栏和范围栏按钮的UITableView.当用户点击示波器条按钮时,将显示键盘并且搜索栏将获得焦点(成为第一响应者).
是否可以允许使用示波器条按钮来过滤表项而不显示键盘?用户可以通过在搜索文本输入字段中专门点击来显示键盘.
iphone ×3
core-data ×2
ios ×2
objective-c ×2
ios5 ×1
ios6 ×1
ipad ×1
sql ×1
uisearchbar ×1
uitableview ×1
xcode ×1
xcode4.5 ×1