2011-06-26 57 views
1

我有一個窗口基於文檔的應用程序,該應用程序加載了幾個用作主視圖的NSViewController。每個視圖控制器都是一個自包含的類,它處理特定的業務需求,並實現所有必需的工作方法。將工具欄與多個NSViewControllers一起使用

我的問題是如何使工具欄工作時,特定的視圖控制器加載。只要在窗口類中實現這些工具欄,我沒有問題將工具欄連接到委託,將工具欄項連接到操作。但是,如果我嘗試爲視圖的loadView方法上的工具欄項目設置新動作,那麼工具欄項目會簡單地忽略它,並繼續在主窗口類上調用該方法。

那麼,如何動態地改變工具欄上的動作呢?

+1

您使用哪些代碼爲'設置工具欄項目的新動作'?你也在設定目標嗎?動作響應鏈中的視圖控制器? – 2011-06-26 23:29:54

回答

1

你還在設定目標嗎? (即[foo setTarget:]除了[foo setAction:]

大概你的窗口控制器有某種currentViewController ivar/property?在切換視圖控制器時最好不要重新分配工具欄操作,而應使用窗口控制器在當前活動的視圖控制器上傳遞它們。

相關問題