gpt4 book ai didi

ios - 单击按钮选择 tableViewCell

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:22:19 25 4
gpt4 key购买 nike

我有一个带有自定义单元格的 tableView。在每个单元格中,我都有一个 UIButton。当我单击单元格内的按钮时,我希望该单元格突出显示,但是当我单击该单元格时,我不希望这种情况发生。你知道有什么办法吗?谢谢

直到现在我有这段代码:

- (IBAction)buttonMethod: (id)sender {
UIButton *b = (UIButton *) sender;
UITableViewCell *cell = (UITableViewCell *)[[[sender superview] superview] superview];
cell.selectionStyle = UITableViewCellSelectionStyleBlue;
[cell setSelected:YES animated:YES];
}

但单元格也在 -didSelectRow 中突出显示。

- (UITableViewCell *)tableView: (UITableView *) tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *cellIdentifier = @"CustomCell";

CustomCell *cell = (CustomCell *) [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
NSAssert(cell, @"cell -> nil");
NSDictionary *cellData = [_data objectAtIndex:indexPath.row];
cell.selectionStyle = UITableViewCellSelectionStyleBlue;

[cell populateCellWithData:cellData];

return cell;
}

最佳答案

使用此 UITableViewDelegate 方法:

- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath {
return nil;
}

这样,当用户点击单元格时无法选择它们,但您仍然可以通过编程方式选择它们。

同时使用

selectRowAtIndexPath:animated:scrollPosition:

在您的 UITableView 上,而不是 UITableViewCell 上的 setSelected:animated: 可能会更好。单元格可以重复使用,并且选择可能会在发生时消失。

关于ios - 单击按钮选择 tableViewCell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24651103/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com