NSIndexPath 中是不是存在节

Posted

技术标签:

【中文标题】NSIndexPath 中是不是存在节【英文标题】:Does section exist in NSIndexPathNSIndexPath 中是否存在节 【发布时间】:2013-08-26 21:30:54 【问题描述】:

如何检查 NSIndexPath 对象的集合是否在特定部分中有项目?我不关心该行,并且想知道它是否有特定部分的项目。

按原样,我已经根据程序中的行数静态地写出,例如,一个有 3 行的第 0 节看起来像:

if ([数组 containsObject:[NSIndexPath indexPathForItem:0 inSection:0]] || [数组 containsObject:[NSIndexPath indexPathForItem:1 inSection:0]] || [数组 containsObject:[NSIndexPath indexPathForItem:2 inSection:0] ]) 

【问题讨论】:

您肯定想要&& 而不是||!? 如果部分中存在任何行,我只想返回一个布尔值,换句话说,如果用户选择了特定部分 然后你使用从0N 的循环,如果你抓住[array containsObject:[NSIndexPath indexPathForItem:i inSection:0] 返回YES,则产生YES 谢谢!最小字符的额外单词 【参考方案1】:

假设array 包含NSIndexPath 对象的数组:

NSInteger someSection = ... // the section to check for
BOOL exists = NO;
for (NSIndexPath *path in array) 
    if (path.section == someSection) 
        exists = YES;
        break;
    


if (exists) 
    // Yes, at least one of the index paths was for the desired section

【讨论】:

我使用 case 语句采用了这种方法。尽管没有此消息的类方法,但效果很好。

以上是关于NSIndexPath 中是不是存在节的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式滚动tableview

对 NSIndexPaths 数组进行排序

我的 NSIndexPath 属性保持未设置是不是可以?

删除 cell.contentview 上的所有子视图,标签除外

如何在对我的数组的 indexPath 调用中同时指定节和行?

移动 NSIndexPath 实体