gpt4 book ai didi

ios - 填充我的 UITableView 时如何跳过特定字符串

转载 作者:行者123 更新时间:2023-12-01 18:19:18 24 4
gpt4 key购买 nike

我正在从从服务器接收的数据中填充一个表格 View 。数据是给定时间范围内的用户事件列表。一种这样的事件是“登录”。我不希望用这个字符串填充我的表格 View ,但我不确定在填充我的表格 View 时如何跳过它。

这是我填充单元格的方式

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{ static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
@try{

NSManagedObject *object = [self.fetchedResultsController objectAtIndexPath:indexPath];
NSString *action = [object valueForKey:@"theActionName"];

if ([action isEqualtoString:@"Login"]) {

return cell;
}

return cell;

}@catch (NSException *ex) {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
return cell;
}
}

如您所见,我尝试使用 return cell但是您可能知道,当显示表格时,它会给我一个空白单元格。我确信这有一行简单的代码,但我对我使用的搜索词一无所知。有人可以请教我!谢谢!

附言您可能会认为我没有在任何单元格中添加任何内容,但我提取了一堆代码以保持简短。

更新:
感谢您对“isEqualtoString:”的提醒:“isEqual”一切正常,但我改变了它,因为我收到了很多这样做的建议。但这不是我要问的。

更清楚地说,如果我有一个包含以下术语的数组: View 、 View 、登录、 View 。当我的表格 View 被填充时,我会有 4 个单元格说;查看,查看,登录,查看。我只是想忽略登录一词,以便我有 3 个单元格都表示 View 。谢谢!

最佳答案

有很多方法可以做到这一点。

我相信 UITabelView应该显示它的数据源(这里的数据源是 self.fetchedResultsController )包含的内容。

你可以做的是创建另一个NSArray来自 self.fetchedResultsController其中不包含此对象。

试试这个:

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

for(int i = 0; i < self.fetchedResultsController.count ; i++)
{
NSManagedObject *object = [self.fetchedResultsController objectAtIndexPath:indexPath];
NSString *action = [object valueForKey:@"theActionName"];

if (![action isEqual:@"Login"])
{
[newSource addObject:action];
}
}

[tableView reloadData];

现在使用 newSource 而不是 self.fetchedResultsController

你可能认为多用一个数组不好。但是相信它比使用带有条件的相同数组要容易得多。当您使用 UITableView 执行某些操作时,您不必担心这种情况。就像使用 indexpath 删除对象一样。

关于ios - 填充我的 UITableView 时如何跳过特定字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18605541/

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