非常簡單的情況下,有很多這個帖子,但我仍然堅持。我有一個嵌入在UINavigationController
中的UITableView
最終UIViewController
應該在選擇UITableViewCell
時顯示。當我將所有這些連接起來時,行選擇上沒有任何反應。UINavigationController沒有後退按鈕
我可以得到詳細視圖,由我們的didSelectRowAtIndexPath
呈現,並通過它的id引用segue。但是,當我這樣做時沒有後退按鈕。
類MainViewController:UIViewController的,的UITableViewDelegate,UITableViewDataSource {
@IBOutlet weak var tableview: UITableView!
var configJson: JSON = []
var config: [Tab] = []
override func viewDidLoad() {
super.viewDidLoad()
parseConfig()
}
func parseConfig() {
let configParser = ConfigParser(configJson: configJson)
config = configParser.parse()
}
public func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return self.config.count
}
public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let tab = self.config[indexPath.row]
let cell = UITableViewCell(style: UITableViewCellStyle.default, reuseIdentifier: "cell")
cell.textLabel?.text = tab.title
return cell
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
performSegue(withIdentifier: "contentSegue", sender: self)
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if (segue.identifier == "contentSegue") {
let nextVC = segue.destination as? ContentViewController
let indexPath = self.tableview.indexPathForSelectedRow
let tab = self.config[(indexPath?.row)!]
nextVC?.tab = tab
}
}
}
一對夫婦的其他注意事項:1。 我IDENTIFER細胞在IB
設置爲 '細胞' 2.我的segue在IB
中設置爲'show',標識符爲'contentSegue'3. Segue從原型單元格到內容Vi新的控制器。
我完全失敗。誰能幫忙?謝謝。
請提供您的下一個視圖控制器代碼 –
沒有任何呢。這只是一個空的viewDidLoad()方法。 – Alex
嘗試刪除你的segue並重新創建它,有時它是有幫助的,也許你從UITabeView或Cell創建它,而不是ViewController –