微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ios – Swift – 如何在UITableview中获取所选行的数值

我在 Swift中创建的UITableview上有多个选择,我声明了一个包含所选UITableView Cells的NSIndexPaths的Array.
self.selectedRows = self.preferencesTableView.indexPathsForSelectedRows()

如何将此数组转换为可读术语.例如self.selectedRows是NSloglike:

选定项目字符串[{length = 2,path = 0 – 1},{length = 2,path = 0 – 0},path = 0 – 3}]

我希望能够将其转换为:1,2,3.

在Objective C中,我通过数组枚举了ObjectsWithOptions,并将数组的id添加一个可变数组中以获得我想要的东西.

[self.selectedRows enumerateObjectsWithOptions:NSEnumerationReverse
usingBlock:^(id obj,NSUInteger idx,BOOL *stop) {
        NSIndexPath *indexPath = obj;
        [self.selectedCategorieItems addobject:[[[self.categoryArr
objectAtIndex:0] objectForKey:@"id"]objectAtIndex:indexPath.row]];
    }];

我如何在Swift中执行此操作?

解决方法

您可以使用map函数返回索引数组.它将闭包作为参数并迭代数组的每个元素. $0是第一个参数,在我们的例子中这是选​​择的索引路径:
let rows = self.tableView.indexPathsForSelectedRows()?.map{$0.row}

请注意,行常量是可选的

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐