【发布时间】:2021-02-08 17:28:37
【问题描述】:
我有一个包含自定义单元格的表格视图。单元格内部有一些按钮。
当我按下按钮使表格进入编辑模式时,它什么也没做。
如果我将单元格的类设置为 UITableViewCell 那么它可以工作。
奇怪的是,如果我将表格视图默认设置为编辑模式,那么当我启动应用程序时,表格处于编辑模式。
唯一的问题是当我按下应该将其设置为编辑模式的按钮时。
编辑按钮:
@objc func didTapEdit(sender: AnyObject){
if table.isEditing == false{
table.isEditing = true
print("okokokok")
} else {
table.isEditing = false
}
}
//This works properly with table views with default cells
表设置:
view.addSubview(table)
table.translatesAutoresizingMaskIntoConstraints = false
table.bottomAnchor.constraint(equalTo: view.bottomAnchor).isActive = true
table.topAnchor.constraint(equalTo: view.topAnchor, constant: navBarHeight).isActive = true
table.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 30).isActive = true
table.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -30).isActive = true
自定义单元格:
contentView.addSubview(btn)
btn.translatesAutoresizingMaskIntoConstraints = false
btn.topAnchor.constraint(equalTo: topAnchor, constant: topSpace).isActive = true
btn.bottomAnchor.constraint(equalTo: bottomAnchor, constant: -5).isActive = true
btn.trailingAnchor.constraint(equalTo: trailingAnchor, constant: -5).isActive = true
let btnWidth = NSLayoutConstraint(item: btn, attribute: .width, relatedBy: .equal, toItem: nil, attribute: .notAnAttribute, multiplier: 0.0, constant: bounds.height-10)
btn.addConstraint(btnWidth)
我有多个按钮,我以相同的方式设置。
那么问题出在哪里?我用自定义单元格创建了其他表格视图,它们都工作得很好。另外,如果我将表格视图默认设置为编辑模式,当我运行应用程序时,它处于编辑模式,我可以移动单元格!这里发生了什么?我认为问题可能在于我如何设置约束,但我真的不知道
【问题讨论】:
标签: ios swift uitableview constraints