2012-10-06 66 views
3

我的容器視圖控制器提供了一系列子視圖,每個子視圖都有其自己的UIViewController。當按下其中一個子視圖上的按鈕時,我需要顯示UIActionSheet從小孩UIViewController呈現UIActionSheet

什麼是從父視圖控制器的工具欄顯示此操作表的正確方法? iOS 5的新容器視圖控制器支持是否提供了一種簡單的方法來執行此操作?或者我應該使用委託讓容器控制器知道按鈕被按下了?

+0

好問題。根據我的理解,沒有比代表團更簡單的方法。但有人可能會更聰明... – ilmiacs

回答

0

我在這個問題上沒有超級經驗,但是不能僅僅通過parentViewController屬性作爲UIActionSheet的代表嗎?並且在呈現動作表時,傳遞parentViewController的屬性,例如,它的視圖還是工具欄?

儘管如此,從工程學的角度來看,我更喜歡使用委派的想法。看到作爲UIActionSheet代理的視圖控制器的代碼看起來很奇怪,但不知道它爲什麼顯示在第一位。

-1

我在容器ViewController的topViewController(稱爲FavoritosViewController)中遇到同樣的問題。

之前以實現所述容器的ViewController,我用在一個UITabBarViewController;FavoritosViewController以及使用該方法顯示從標籤欄的UIActionSheet[actionSheet showFromTabBar:self.tabBarController.tabBar];

當我修改的項目的結構使用一個容器的ViewController代替tabBar,它崩潰了。但可能由於現在沒有tabBar。它適用於替代此方法的前一個: [actionSheet showInView:self.view];

希望有用。新年快樂。

相關問題