Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何仅获取与Bool属性匹配的某些对象_Iphone_Core Data_Properties_Boolean_Nsfetchrequest - Fatal编程技术网

Iphone 如何仅获取与Bool属性匹配的某些对象

Iphone 如何仅获取与Bool属性匹配的某些对象,iphone,core-data,properties,boolean,nsfetchrequest,Iphone,Core Data,Properties,Boolean,Nsfetchrequest,每次从数据库中获取对象时,我都会获取所有对象。现在,我必须获取并在表视图中仅显示存储在数据库中的一些对象 为此,我想在我的实体中添加一个新属性,一个BOOL属性,这样我就可以只获取属性值等于YES或NO的对象,这取决于具体情况 有可能这样做吗 我发现NSFetchRequest类的-setPropertiesToFetch:方法很有用,但我不知道是否可以使用它来查看BOOL的不同值。听起来你只是想使用谓词。这本书给出了如何使用它们的好主意。基本上,它会为结果添加一个过滤器。例如,假设您有一个具有

每次从数据库中获取对象时,我都会获取所有对象。现在,我必须获取并在表视图中仅显示存储在数据库中的一些对象

为此,我想在我的实体中添加一个新属性,一个BOOL属性,这样我就可以只获取属性值等于YES或NO的对象,这取决于具体情况

有可能这样做吗


我发现
NSFetchRequest
类的
-setPropertiesToFetch:
方法很有用,但我不知道是否可以使用它来查看BOOL的不同值。

听起来你只是想使用谓词。这本书给出了如何使用它们的好主意。基本上,它会为结果添加一个过滤器。例如,假设您有一个具有属性
myBool
的核心数据对象,该属性是BOOL(当然是存储为NSNumber)。要基于此筛选结果,您可以使用以下内容

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"myBool == %@", [NSNumber numberWithBool:YES]];
[fetchRequest setPredicate:predicate];
然后像往常一样继续。这将只返回
myBool
值为YES的结果


这就是说,如果您使用请求只是填充tableView,那么最好使用。可以找到一个关于如何实现它的很好的教程。

+1我想补充一点,您不应该只为显示数据模型中的实体而向其添加属性。实体属性应该与应用程序处理的真实世界对象、事件或条件的属性非常相似。例如,如果您的应用程序与人打交道,并且您有一个
Person
对象,那么您将有一个
firstName
属性,而不是
displayInThirdView
属性。第一个是真实人物的属性,但后一个是不属于数据模型的实现细节。。。这太棒了;)我必须更频繁地使用谓词:D