Просмотр иерархии до addSubview
:
Просмотр> TableView
Просмотр иерархии после addSubview
:
Просмотр> TableView && View> CustomView
После вызова addSubview
CustomView отображается поверх TableView, поскольку его фрейм меньше и был добавлен после TableView.Тем не менее, у меня есть кнопки и текстовые поля в CustomView, ни одно из которых не работает.Даже когда я нажимаю на CustomView, scrollView в TableView, кажется, захватывает tapGesture.Как я могу сделать так, чтобы кнопки и текстовые поля CustomView могли принимать прикосновения?
Кроме того, фоновый цвет CustomView ясен, показывая нижнюю часть таблицы, когда пользовательский вид добавляется в иерархию видов.Я попытался установить цвет фона в раскадровке и программно, но он все еще застрял.Как я могу это исправить?
class masterViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
//blah blah
@IBOutlet weak var tableView: UITableView! // tableView is added in the storyboard
let newForm = NewFormView(frame: CGRect(x: 0, y: 0, width: 300, height: 300))
newForm.backgroundColor = UIColor.white
self.view.addSubview(newForm)
newForm.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
newForm.centerXAnchor.constraint(equalTo: self.view.centerXAnchor),
newForm.centerYAnchor.constraint(equalTo: self.view.centerYAnchor)
])
}
newForm
- это перо UIView
с кнопками и полями текста, добавленными в раскадровку пера