有没有一种方法可以禁用UITableViewRowAction按钮的辅助功能字体缩放?

时间:2019-05-22 22:02:48

标签: ios swift uitableview

我需要一种禁用UITableViewRowAction按钮的字体缩放的方法。有什么方法可以禁用字体缩放或访问UITableViewRowAction按钮本身,以便我可以更改其字体大小?

我已经尝试通过逐步浏览子视图来访问editActionsForRowAt函数内部的按钮和didTransition(来声明UITableViewCell类内部的函数:

override func didTransition(to state: UITableViewCell.StateMask) {
    super.didTransition(to: state)
    if (state.rawValue & UITableViewCell.StateMask.showingDeleteConfirmation.rawValue) == UITableViewCell.StateMask.showingDeleteConfirmation.rawValue {
        let deleteButton: UIView? = subviews.first { (view) -> Bool in
            return String(describing: view).contains("Delete")
        }
        if let deleteButton = deleteButton {
            print(deleteButton)
        }
    }
}

1 个答案:

答案 0 :(得分:0)

我找到了一种访问TableViewRowAction按钮的方法。如果您将UITableView子类化并覆盖layoutSubviews,则可以使用此循环查找UIButton。

覆盖函数func layoutSubviews(){

    super.layoutSubviews()
    for subview in subviews {
        if NSStringFromClass(type(of: subview)) == "UISwipeActionPullView" {
            for case let button as UIButton in subview.subviews {
                button.titleLabel?.font = UIFont.systemFont(ofSize: 17)
            }
        }
    }
}