如何在 UITableView 删除按钮上添加图像?
Posted
技术标签:
【中文标题】如何在 UITableView 删除按钮上添加图像?【英文标题】:How to add image on UITableView delete button? 【发布时间】:2015-11-26 15:26:48 【问题描述】:我有一个 UITableView 并且我已经向它添加了编辑操作。现在我想在删除按钮标签上方添加图像,如:
这是我的代码:
func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [UITableViewRowAction]?
let blockAction = UITableViewRowAction(style: .Normal, title: "Block") (rowAction:UITableViewRowAction, indexPath:NSIndexPath) -> Void in
//TODO: Delete the row at indexPath here
blockAction.backgroundColor = UIColor.redColor()
return [blockAction]
如何在我的Delete
按钮上添加图片?
【问题讨论】:
@rmaddy 但其他开发人员是如何做到的? 也许他们使用的是第 3 方自定义表格视图单元格类,而不是使用UITableViewDelegate
提供的标准 API。
参考这个问题,你会找到答案:***.com/questions/20290766/…----------------***.com/questions/29335104/…如果你是ios8+
只有第二个链接是相关的。我忘记了使用“图案图像”作为背景颜色的想法。这可能行得通。
【参考方案1】:
您可以在背景颜色上使用特殊图像,并使用'\n'符号来降低文本
func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]?
let blockAction = UITableViewRowAction(style: .normal, title: "\nBlock") (rowAction:UITableViewRowAction, indexPath:IndexPath) -> Void in
//TODO: Delete the row at indexPath here
blockAction.backgroundColor = UIColor(patternImage: UIImage(named: "delete_background")!)
return [blockAction]
【讨论】:
【参考方案2】:您可以实现一个可滑动的 tableviewcell 来完成此操作,您可以在其中实现自定义按钮以进行编辑操作。这方面有很多教程。检查以下一项:
https://www.raywenderlich.com/62435/make-swipeable-table-view-cell-actions-without-going-nuts-scroll-views
【讨论】:
以上是关于如何在 UITableView 删除按钮上添加图像?的主要内容,如果未能解决你的问题,请参考以下文章
添加/删除 UITableView 行时如何防止文本字段变空?
Swift:UITableView - 滑动删除 - 如何让单元格内容在滑动时不移动
如何制作可滑动的 UItableview 标题以显示像单元格一样的删除按钮