gpt4 book ai didi

ios - 这怎么可能? UITableView 数据源计数奇怪的行为

转载 作者:行者123 更新时间:2023-11-28 22:01:41 26 4
gpt4 key购买 nike

我不明白这是怎么可能的,也不明白为什么会这样。谁能给我一个主意?

我添加了更多代码来帮助您解决问题,但是,我不确定额外的代码会有什么帮助。

NSMutableArray *messages = [[NSMutableArray alloc] init];

PFUser *currentUser = [PFUser currentUser];

PFQuery *query = [PFQuery queryWithClassName:@"message"];

[query whereKey:@"receiver" equalTo:currentUser.objectId];

[query orderByDescending:@"createdAt"];

[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {

if (!error && objects !=NULL) {
NSMutableArray *listOfLastMsgs = [[NSMutableArray alloc] init];
for (PFObject *object in objects) {
Boolean *tester = false;
for(int i = 0;i<listOfLastMsgs.count;i++){


if([[object objectForKey:@"sender"] isEqualToString:[[listOfLastMsgs objectAtIndex:i] objectForKey:@"sender"]]){
tester = true;
}
}
if(!tester){
[listOfLastMsgs addObject:object];
}
}

for(int i = 0;i<listOfLastMsgs.count;i++){
NSString *s = [[listOfLastMsgs objectAtIndex:i] objectForKey:@"message"];

if(s.length > 80){
s = [s substringToIndex:80];
}
[messages addObject:s];

}

NSLog(@"in did load %lu", (unsigned long)messages.count);
[self.tableView reloadData];
} else {
// Log details of the failure
NSLog(@"Error: %@ %@", error, [error userInfo]);
}
}];


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
// Return the number of rows in the section.

NSLog(@"in number of rows %lu", (unsigned long)messages.count);
return messages.count;
}

这是我的输出日志

2014-07-25 18:15:32.980 myapp[5696:60b] in number of rows 0
2014-07-25 18:15:35.990 myapp[5696:60b] in did load 2
2014-07-25 18:15:35.991 myapp[5696:60b] in number of rows 0

最佳答案

假设您的 viewDidLoad 中有大量代码,问题很简单 - 您有一个在 viewDidLoad 中设置的本地 messages 变量并且您的 numberOfRowsInSection 正在引用一个未初始化的 messages 实例变量。

假设您确实有一个名为messages 的ivar,在viewDidLoad 中,更改:

NSMutableArray *messages = [[NSMutableArray alloc] init];

到:

messages = [[NSMutableArray alloc] init];

关于ios - 这怎么可能? UITableView 数据源计数奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24965353/

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