如何检查 UITableView 中的选定行属于哪个组/部分

Posted

技术标签:

【中文标题】如何检查 UITableView 中的选定行属于哪个组/部分【英文标题】:How to check the selected row in UITableView is of which group/section 【发布时间】:2016-04-14 10:55:32 【问题描述】:

是否可以在 UITableView 中获取相应选定行的节数

【问题讨论】:

NSIndexPath 包含sectionrow 信息。 Get Selected index of UITableView的可能重复 【参考方案1】:

是的,您可以使用

检查部分
indexPath.section

【讨论】:

【参考方案2】:

如果你有 NSIndexPath,你可以得到 row by

indexPath.row 

或部分

indexPath.section

【讨论】:

【参考方案3】:

试试下面的示例代码:

#pragma mark - Table view data source

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView 
    return 5;


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 
    NSInteger rows = 0;

    switch (section) 
        case 0:
            rows = 7;
            break;
        case 1:
            rows = 21;
            break;

        case 2:
            rows = 3;
            break;

        case 3:
            rows = 1;
            break;

        case 4:
            rows = 5;
            break;

        default:
            break;
    
    return rows;



- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"CELL" forIndexPath:indexPath];

    // Configure the cell...

    cell.textLabel.text = [NSString stringWithFormat:@"section : %ld & rows : %ld",(long)indexPath.section,(long)indexPath.row];
    return cell;


- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
    //This will print which row of which section is clicked
    NSLog(@"section : %ld & rows : %ld",(long)indexPath.section,(long)indexPath.row);


【讨论】:

【参考方案4】:

这是对的!

   NSArray <NSIndexPath *>*rows = [tableView indexPathsForSelectedRows];

【讨论】:

【参考方案5】:

我解决了我正在寻找的问题。我想在单击按钮时获取其中各个选定行的所有部分编号。

我用过 NSArray *paths = [self.tableView indexPathsForSelectedRows];

【讨论】:

以上是关于如何检查 UITableView 中的选定行属于哪个组/部分的主要内容,如果未能解决你的问题,请参考以下文章

如何从属于 UITableView 中的模型数组对象的数组中向 tableView 显示数据?

如何将选定的 uitableview 行发送到新创建的组

如何在 Swift 中截取 UITableView 中选定行的屏幕截图并将其保存为 UIImage?

在 UiTableView reloadData 之后保留选定的部分/行

didSelectRowatIndexPath 中的 UITableView 行数

将 UINavigationController 弹出到 UITableView 并显示不同的选定行