gpt4 book ai didi

ios - Parse.com 存储 boolean 数组

转载 作者:行者123 更新时间:2023-11-29 12:26:36 25 4
gpt4 key购买 nike

我正在尝试存储来自查询的 boolean 值数组,但该数组为 null。

这是我的:

PFQuery *businessInquiry = [PFQuery queryWithClassName:@"BusinessInquiry"];
businessInquiry.cachePolicy = kPFCachePolicyIgnoreCache;
[businessInquiry selectKeys:@[@"messageBody", @"emailAddress"]];
[businessInquiry orderByDescending:@"createdAt"];
[businessInquiry findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
self.businessInquiryEmailArray = [objects valueForKey:@"emailAddress"];
self.businessInquiryMessageArray = [objects valueForKey:@"messageBody"];
self.businessInquiryObjIdArray = [objects valueForKey:@"objectId"];
self.businessisNewArray = [objects valueForKey:@"messageRead"]; //this column is a BOOL column in parse backend but it returns null
}];

我的目标是在 cellForRowAtIndexPath: 的详细 TableView Controller 中交叉引用它,如果它是新的,则在 cell.imageView.image 槽中添加一个图标以指示它是新的,视觉上如下:

if ([self.isNew objectAtIndexPath:indexPath.row] == FALSE) {
//New message
} else {
//Read
}

为什么不存储值?

我也试过:

self.businessiSNewArray = [[objects valueForKey:@"messageRead"] boolValue];

但这也没有用。有什么建议吗?

编辑

我像这样将数组传递给详细 View Controller :

    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
DetailTableViewController *detailVC = [storyboard instantiateViewControllerWithIdentifier:@"DetailTableViewController"];
detailVC.emailAddressArray = self.businessInquiryEmailArray;
detailVC.messageBodyArray = self.businessInquiryMessageArray;
detailVC.objIds = self.businessInquiryObjID;
detailVC.isNew = self.businessisNewArray;
detailVC.title = @"Business Inquiries";
[self.navigationController pushViewController:detailVC animated:YES];
}

除 boolean 值外,所有内容都与 DetailVC header 中的相应属性相关。他们返回 null

最佳答案

这个问题有点与保罗所说的有关,但又不是。是的,您可以将它们作为一个数字装箱,但在您的情况下无关紧要。

问题是其中一件事,如果您知道它是什么,您会拍打自己的额头说,噢噢噢噢!

简单地说,您已经限制您的查询不包括 messageRead 列类型,不管它是什么类型的列,它可以是任何东西(字符串、数字等),但事实上您已经通过 限制了它在“selectKeys:”中排除它是它返回 null 的原因:

selectKeys: Make the query restrict the fields of the returned PFObjects to include only the provided keys.

引用: https://parse.com/docs/ios/api/Classes/PFQuery.html#//api/name/selectKeys :

只是一个简单的忽略。如果这些是后端类中仅有的 3 列,则实际上没有必要使用 selectKeys:,因为它无论如何都会返回所有对象,而您只需将它们传递到可回收数组中即可。

关于ios - Parse.com 存储 boolean 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28910381/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com