0

I am trying to add Trailing Swipe Actions for UITableView using UIContextualAction but the icon is not visible because the icon becomes white and the background is also white and when I change the background color it is visible. Please help me set the icon as such with its color. I tried searching for tint color property but there is no such property. Below are the codes I have tried.

func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {

    let delete =  UIContextualAction(style: .normal, title: nil, handler: { (action,view,completionHandler ) in
        //    Delete the row after API
    })

    //Solution 1
    delete.image = UIImage(named: "deleteicon")

    // Solution 2
    delete.image = UIGraphicsImageRenderer(size:CGSize(width: 30, height: 30)).image { _ in
        UIImage(named:"deleteicon")?.draw(in: CGRect(x: 0, y: 0, width: 30, height: 30))
    }

    // Solution 3
    edit.backgroundColor = UIColor(patternImage: UIGraphicsImageRenderer(size:CGSize(width: 30, height: 30)).image { _ in UIImage(named:"favouriteinactiveicon")?.draw(in: CGRect(x: 0, y: 0, width: 30, height: 30))})

    let confrigation = UISwipeActionsConfiguration(actions: [delete])
    return confrigation
}
Khushal Dugar
  • 230
  • 4
  • 12

0 Answers0