Stackoverflow
Я знаю, как сделать кнопку в ячейках табличного представления со ссылками на сайт, тарифами, почтой и многими другими вещами. Однако, как я могу открыть контроллер представления с instantiateViewController
в операторах @Objc
fun c?
Например.
Создать новую папку ячейки табличного представления с именем FeedBackButtonsTableViewCell
class FeedBackButtonsTableViewCell: UITableViewCell {
@IBOutlet weak var ButtonCells: UIButton!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}
Позвольте создать новую папку контроллера представления с именем
class FeedbackViewController: UIViewController {
@IBOutlet weak var TableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
self.navigationItem.title = "Feedback"
}
}
добавить расширение для вызова контроллера представления в UITableViewDataSource
и UITableViewDelegate
и создать obj fun c операторы внутри второго FeedbackViewController
с UITableViewDataSource
и UITableViewDelegate
под ячейками.
extension FeedbackViewController: UITableViewDataSource, UITableViewDelegate {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1
}
if indexPath.row == 1 {
buttonCell = TableView.dequeueReusableCell(withIdentifier: "ButtonCells") as? FeedBackButtonsTableViewCell
buttonCell?.ButtonCells.addTarget(self,action: #selector(LearnMore),for: .touchUpInside)
buttonCell?.ButtonCells.tag = indexPath.row
return buttonCell!
}
@objc func LearnMore() {
// How could I write to open the view controller with UIButton in the Table View Cells?
}
}
Спасибо за помощь! :)