gpt4 book ai didi

ios - 如何设置 UITableViewRowAction 的 Action

转载 作者:行者123 更新时间:2023-11-29 00:10:58 25 4
gpt4 key购买 nike

我自定义了 UITableCellDeleteConfirmationView 以更改 iOS 8 及更高版本中按钮的背景颜色。 Following this post ,我实现了 editActionsForRowAtIndexPathcommitEditingStylecanEditRowAtIndexPath

-(NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath {

RankedSpecies* rankedSpecies = [fetchedResultsController objectAtIndexPath:indexPath];

if ( [self.collectedLeaf.selectedSpecies isEqualToString:[rankedSpecies.Species commonNameFirstLast]] )
{
UITableViewRowAction *unlabelSpecies = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"UnLabel" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath)
{
NSLog(@"Action to perform with Button 1");
}];
unlabelSpecies.backgroundColor = [UIColor darkGrayColor];

return @[unlabelSpecies];
}

UITableViewRowAction *labelSpecies = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"Label" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath)
{
NSLog(@"Action to perform with Button 1");
}];
labelSpecies.backgroundColor = [UIColor darkGrayColor];

return @[labelSpecies];
}

但是,当我按下这些自定义按钮时,它们不会调用 commitEditingStyleAccording to this post , commitEditingStyle 仅在您触摸删除按钮时触发。

我没有尝试弄清楚如何触发 commitEditingStyle,而是创建了复制我的 commitEditingStyle 实现 removeCollectedLeafLabel 的方法。 类方法可以是一个 Action 吗?如何设置 UITableViewRowAction 在按下时执行某些操作?

最佳答案

当您按下按钮时,它将调用该 block 。

UITableViewRowAction *unlabelSpecies = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"UnLabel" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath)
{
CALL_YOUR_METHOD_FROM_HERE
}];


unlabelSpecies.backgroundColor = [UIColor darkGrayColor];

return @[unlabelSpecies];

关于ios - 如何设置 UITableViewRowAction 的 Action ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46477676/

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