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

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

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

阅读 9.5k
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 有很大的用处。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题