0

我目前在詳細視圖的viewDidLoad中添加了Segmented Control,這很好,但這意味着我需要調用回TableViewController才能對其執行操作。UITableView UITableViewController詳細信息視圖和UISegmentedControl如何?

而實際上它是表視圖導航器的責任去做表視圖中的項目?所以我認爲,如果我在prepareForSegue中添加分段控件時切換窗體視圖到詳細視圖會更好?但是,當我嘗試詳細視圖從導航欄中刪除分段控制,所以我懷疑這是不是一個正確的方式,或者我做錯了什麼。

這樣做的正確方法是什麼?

還有可能獲得類似於電子郵件客戶端使用的下一個/上一個按鈕的上下箭頭的默認圖像?

回答

1

不,您無法在prepareForSegue中添加控件,因爲那時目標控制器的視圖尚未加載。在viewDidLoad中做到這一點很好。我不知道你是什麼意思,「我需要回調到TableViewController來處理它」。分段控制的目的是什麼?

+0

目的是在表視圖中的行之間的細節之間前進/後退,但不返回到表視圖。分段控制是下一個先前的選擇器。 基本上我該如何在索引處選擇行......還是需要將指向元素的指針傳遞給詳細視圖,以便它管理數據的加載和重新加載? – kos 2013-03-02 00:10:20

+0

@ user2009606,將數據返回給來自您的控制器的常用方法是使用委託方法。表格視圖控制器應該在創建它時將自己設置爲詳細控制器的代表。分段控件的操作方法會調用委託方法,這會導致表視圖控制器將下一個或上一個項目傳遞給細節控制器。 – rdelmar 2013-03-02 00:58:16

+0

謝謝,我認爲這很有道理。我通過將數據傳遞給細節視圖和細節重新加載來完成它。只是因爲我不知道如果我調用委託tableview從上一行的細節中選擇另一行,僅返回到詳細視圖,它不會看起來如何。對這些轉變的視覺方面更多的關注。 – kos 2013-03-02 20:19:37

相關問題