2015-06-24 56 views
0

如何以編程方式將UITableViewController添加到UINavigationViewController?

class SortViewController: UINavigationController{ 

var myBtn: UIBarButtonItem? 
var tvc = UITableViewController() 

override func viewDidLoad() { 
    super.viewDidLoad() 

     myBtn = UIBarButtonItem(title:"Press Me", style: UIBarButtonItemStyle.Plain, target: self, action: "doStuff:") 

     tvc.navigationItem.leftBarButtonItem = sortBtn 
     self.pushViewController(tvc, animated: true) 
     tvc.tableView.reloadData() 
    } 

了所有必要的override func tableView(...)以下功能。

這些都是在不同視圖調用的彈窗視圖中。彈出窗口打開時,myBtn正常顯示在表格頂部的導航欄上,表格不會按照它應該填充的方式填充。 - 也就是說,它根本不填充。

任何想法爲什麼?

注意在我的應用程序中的一切都是完全程序化的;沒有任何故事板 - 這是故意的。

由於提前,

喬納

回答

0

分配delegatedataSource財產具有自我。那麼只有tableViewController的方法會被調用。

+0

我不明白。我見過以前使用過的委託,但是我試着做self.delegate(或tvc.delegate)它不起作用:self.delegate給出錯誤「類型UITableViewController不符合協議UINavigationControllerDelegate」 - 即使當我將此代表添加到該類中。請你擴展一下嗎? – Jona

相關問題