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] ])
【问题讨论】:
您肯定想要&&
而不是||
!?
如果部分中存在任何行,我只想返回一个布尔值,换句话说,如果用户选择了特定部分
然后你使用从0
到N
的循环,如果你抓住[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 中是不是存在节的主要内容,如果未能解决你的问题,请参考以下文章
删除 cell.contentview 上的所有子视图,标签除外