import UIKit
class RefreshAndEditingTableView: RefreshTableView {
override func layoutSubviews() {
super.layoutSubviews()
if #available(iOS 11.0, *) {
for subview in self.subviews where subview.isKind(of: NSClassFromString("UISwipeActionPullView")!) {
subview.backgroundColor = RGBA(242, g: 242, b: 242, a: 1)
for view in subview.subviews where view.isKind(of: NSClassFromString("UISwipeActionStandardButton")!) {
view.backgroundColor = RGBA(242, g: 242, b: 242, a: 1)
let deleteBtn = setupDeleteBtn(frame: CGRect(x: 0, y: 0, width: 80, height: view.bounds.height))
view.addSubview(deleteBtn)
view.bringSubviewToFront(deleteBtn)
}
}
} else { // IOS 10以及以下
for subview in subviews where subview.isKind(of: NSClassFromString("UITableViewCellDeleteConfirmationView")!) {
subview.backgroundColor = RGBA(242, g: 242, b: 242, a: 1)
for view in subview.subviews where view.isKind(of: UIButton.self) {
view.backgroundColor = RGBA(242, g: 242, b: 242, a: 1)
let deleteBtn = setupDeleteBtn(frame: view.frame)
view.addSubview(deleteBtn)
view.bringSubviewToFront(deleteBtn)
}
}
}
}
private func setupDeleteBtn(frame: CGRect) -> UIButton {
let deleteBtn = UIButton(type: .custom)
deleteBtn.frame = frame
deleteBtn.backgroundColor = RGBA(242, g: 242, b: 242, a: 1)
deleteBtn.setImage(UIImage(named: "btn_home_footmark_delete"), for: .normal)
deleteBtn.imageEdgeInsets = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
return deleteBtn
}
}
自定义tableView左滑删除按钮
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- Swift自定义TableView左滑删除按钮样式 1. 效果图 2. 实现过程 在tableView的layou...
- 将下面这段代码放在当前控制器中 然后就是在tableview的代理方法中一定要写 十分重要 在控制器的生命周期中调用
- 前言 公司的项目中用到了一个tableView左滑删除的功能,删除按钮带有文字和图片效果如下图 具体实现 需要说明...