首页 > 解决方案 > UITableVIewCell ,在滑动时显示编辑联系人按钮

问题描述

如何在 UITableViewCell 上滑动时显示编辑联系人按钮?该事件永远不会引发,并且编辑按钮永远不会出现。

标签: iosuitableviewcocoa-touchuikit

解决方案


适用于 Swift 4 和 iOS 11+

func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
    // since the style is destructive, so it will have a red background by default.
    // change it to .normal and it will have a blue background by default..
    let editAction = UIContextualAction(style: .destructive, title: "Edit Contact") { _, _, complete in
        // continue your logic..
        // write your code to move to next screen.. Perform segue or move using storyboards..
        complete(true)
    }
    // if you want to add icon, then you can do it this way..
    editAction.image = UIImage(named: "editContact")
    // you can set your own background color for the button like this..
    editAction.backgroundColor = .orange
    let configuration = UISwipeActionsConfiguration(actions: [editAction])
    //set to false to prevent a full swipe from performing the first action..
    configuration.performsFirstActionWithFullSwipe = true
    return configuration
}

推荐阅读