Re: [問題] 關於iphone UIkit delegate的問題

看板MacDev作者 (星空下的鮪魚)時間15年前 (2010/07/17 07:10), 編輯推噓0(002)
留言2則, 1人參與, 最新討論串5/7 (看更多)
※ 引述《markzog21 (殘羽星辰)》之銘言: : 主頁mainView (只有一張image 按下去或是過兩秒自動跳到userView) : │ : ˇ : 使用者主畫面userView (程式各種功能) : 我的問題變成如果mainView就呼叫delegate 的話,會變成mainView 也有delegate的功能 : (如tabBar跟navagationBar) : 而我在userView的時候又需要delegate的功能 : 所以我想要說在我需要delegate的時候在把他叫出來,而只要秀mainView的時候(有點像程式一 : 開始的動畫但因為我可能會包4個不太一樣的application所以希望是用View的方式表現) : 就不用delegate : 然後我研究了很久都還是卡住...不知道是哪裡的想法有誤 : 上一篇的推文中說把delegate 設為nil就可以了,但我就是這裡不懂= =" : 要從哪設還有哪可以重新呼叫之類的。 我在想,你可能用了UIView裡的beginAnimations:context: 和commitAnimation做動畫效果, 然後addSubView:和removeFromSuperView之類的, 替換掉目前的畫面。 如果你四個不太一樣的app,都是UIViewController, 但在更換不同的畫面時,是用上面所說的, 把另一個UIViewController的view,加到另一個上面的話, 這時候,會有一些情形出現。 如mainView的controller是mainController, 另外四個是Acontroller, Bcontroller, ..., Dcontroller。 要用的時候是把A,B,C,D這四個controller的view加到mainController上面去。 因為UINavigation上的top controller還是mainController, 所以像判斷水平垂直, - (BOOL)shouldAutorotateToInterfaceOrientation: (UIInterfaceOrientation)interfaceOrientation 會呼叫mainController裡的。 而畫面轉換到A,B,C,D時,也要記得手動呼叫 - (void)viewWillAppear, - (void)viewDidAppear, - (void)viewWillDisappear, - (void)viewDidDisappear, 若是用UINavigationController的push和pop ViewController的話, 上述的事情它有做掉了,就不需要額外的操心。也可以少掉一些未知的麻煩。 ========================================================== 也可能我會錯義了,你真的用四個UIView來做功能。 不過我是覺得用四個UIViewController會比較好。 在MVC的pattern中,UIViewController才是負責model和View溝通的中間者。 -- 「當我真心追尋著我的夢想時,每一天都是繽紛的。 因為我知道每一個小時都是在實現夢想的一部分, 當我真實地在追尋著時,一路上我都會發現從未想像過的東西, 如果當初我沒有勇氣去嘗試看來幾乎不可能的事,如今我就還只是個牧羊人而已。」 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.216.233.16 ※ 編輯: aecho 來自: 61.216.233.16 (07/17 07:13)

07/17 15:43, , 1F
恩 謝謝解答,我沒有用view來作功能啦=="
07/17 15:43, 1F

07/17 15:44, , 2F
能那樣做到也很強大XD
07/17 15:44, 2F
文章代碼(AID): #1CGERGIU (MacDev)
討論串 (同標題文章)
文章代碼(AID): #1CGERGIU (MacDev)