小白问题一个,NSArray<NSIndexPath *>是什么类型?

murphyy
  • 392

uitableview刷新单个row的时候,传入indexPath提示类型不对

  • (void)deleteRowsAtIndexPaths:(NSArray<NSIndexPath > )indexPaths withRowAnimation:(UITableViewRowAnimation)animation;
    NSArray<NSIndexPath *>这个是什么意思?

回复
阅读 8.4k
6 个回答

iOS9新特性---泛型,规定NSArray里存放的是NSIndexPath类型的,这样就缩小范围,我们更容易知道数组里元素的具体类型

NSArray这不是数组么,NSIndexPath 这不是一个表示row,selection的对象么。 就说明(NSArray<NSIndexPath > )indexPaths 中indexPaths这个参数是NSArray类型 里面存放的是NSIndexPath类型的 (如楼上说的 @zhunjieee)

最简单的方法 就是选中 然后按住commend键,就可以进去头文件,里面看了,这个是方法。具体的也可以打印,看他是什么类型 可以加上.class ,就可以看他的类型了

(void)deleteRowsAtIndexPaths:(NSArray<NSIndexPath > )indexPaths withRowAnimation:(UITableViewRowAnimation)animation;

(NSArray<NSIndexPath >)indexPaths 这个参数是数组,数组里装的是NSIndexPath对象

让你传参,是装有NSIndexPath类型的数组

就是数组NSArray里面存放的是NSIndexPath对象类型的

这是个简单的泛型模式, 对桥接 objc 的代码到 swift 有很大的用处。

宣传栏