我正在使用 UITableViewRowAction。我的要求是在表格单元格的左侧滑动时,我应该显示 2 UITableViewRowAction button
。我可以通过实施来实现这一点-(NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath;
。这是代码
-(NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewRowAction *button = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDefault title:@"Delete" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath)
{
NSLog(@"Action to perform with Button 1");
}];
button.backgroundColor = [UIColor greenColor]; //arbitrary color
UITableViewRowAction *button2 = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDefault title:@"Edit" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath)
{
NSLog(@"Action to perform with Button2!");
}];
button2.backgroundColor = [UIColor redColor]; //arbitrary color
return @[button, button2];
}
目前,我正在使用一些任意颜色作为button
和的背景button2
。
但我的要求是要有背景图片而不是某种颜色。我浏览了这里给出的答案,并尝试通过添加来实现它
button.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"icon_ab_delete.png"]];
代替
button.backgroundColor = [UIColor greenColor];
我的项目中存储了icon_ab_delete.png 。但是,当我运行我的应用程序时,我会得到一个白色背景,上面什么都没有。像这样的东西:
编辑后的按钮应该是删除的,它什么也没显示,它确实存在,因为我仍然可以捕获我试图在它的处理程序中执行的事件。
我想知道我是否正确设置了背景图像,还是有其他方法可以实现我想要实现的目标?
提前致谢!