这很有趣.在我的应用程序中,我在数据库中创建了数千个条目(在另一个线程中,我正在使用MagicalRecord).一切似乎都很好(从背景/前景/上下文的角度来看).
当在主线程中,我尝试获取"刚插入"的数据时,我发现了以下行为:
- (NSArray *) familiesInCompany:(Company *) company {
NSPredicate *predicate1 = [NSPredicate predicateWithFormat:@"company == %@", company];
NSPredicate *predicate2 = [NSPredicate predicateWithFormat:@"company.name == %@", company.name];
NSArray *first = [Family MR_findAllSortedBy:@"name" ascending:YES withPredicate:predicate1];
NSArray *second = [Family MR_findAllSortedBy:@"name" ascending:YES withPredicate:predicate2];
NSArray *third = [Family MR_findByAttribute:@"company" withValue:company andOrderBy:@"name" ascending:YES];
return second;
}
Run Code Online (Sandbox Code Playgroud)
现在我得到的是:
Family
对象,如预期的那样通过调试SQL语句,我得到以下内容:
"第一"声明:
CoreData:注释:总获取执行时间:0行为0.0000s.
"第二个"声明":
CoreData:sql:SELECT 0,t0.Z_PK,t0.Z_OPT,t0.ZNAME,t0.ZCOMPANY FROM ZFAMILY t0 JOIN ZCOMPANY t1 ON t0.ZCOMPANY = t1.Z_PK WHERE t1.ZNAME =?ORDER BY t0.ZNAME
CoreData:annotation:sql连接获取时间:0.0005s
CoreData:注释:总获取执行时间:2行0.0007秒.
"第三"声明: …
想象一下这个场景.你有一个UIImageView和一个UIButton.第一个是300x360,第二个是210x70.在imageview
包含目录形象,button
说"公开目录".
我想根据这些要求在主视图中定位元素:
两个元素应该水平居中,即center.x坐标应该全部相等(视图,图像和按钮);
两个元素应按以下方式垂直居中:分隔符(灵活) - imageview - 分隔符(固定,假设30分) - 按钮 - 分隔符(灵活).最上面和最下面的分隔符应该具有相同的大小(这是居中的含义).
我无法使用NSLayoutConstraint使其工作.
到目前为止,我做什么,一直是围绕使用两个元素的X坐标NSLayoutAttributeCenterX
和NSLayoutRelationEqual
相同的view
属性.
根据我的想法,最后一部分是修复它们的垂直对齐.我尝试过使用@"V:|-[imageview(360)]-[button(70)]-|"
但它不起作用(Unable to simultaneously satisfy constraints.
).
如果我使用@"V:|-[imageview(360)]-[button]-|"
我可以让一切都好.也就是说,顶部是完美的但是按钮被拉伸以填充内部分隔符和视图底部之间的间隙.
如何使这些元素固定大小并让自动布局只是弄清楚如何将它们放在视图中?
我正在尝试做一个非常简单的事情:在PDF文件中写一个可以被用户实际点击的URL.
我确信使用libharu可以完成.我正在寻找的是使用Core Graphics做同样的事情,因为我在我的应用程序中已有的整个代码已经在使用这些方法.
==编辑==
我想我找到了一些东西:UIGraphicsSetPDFContextURLForRect
但我不能让它发挥作用.
我正在使用类似的东西:
NSURL *url = [NSURL URLWithString:@"http://www.google.com"];
UIGraphicsSetPDFContextURLForRect( url, CGRectMake(0, 0, 100, 100));
Run Code Online (Sandbox Code Playgroud)
但是,rect不可点击.