我有一些主要的viewController,我想添加一個子視圖到它,作爲一個孩子,這也是一個viewController。不能將代表添加到子視圖
我的方法是,當你完成編輯子視圖時,他會告訴主視圖對委託進行操作。
做到這一點的方法來創建多個子視圖
viewcontrollers
正在添加到主視圖,當有事情發生,是一個很好的方法與代表通知他?爲什麼我不能添加委託監聽器到我的子視圖?我創建了協議,在我的子視圖,主視圖中添加子視圖,需要訂閱其委託,所以:
UIViewController *search = [[SearchView alloc]init]; //my subview that post delegate //[search delete:self]; //can't add delegate here, [self addChildViewController:search]; // search.view.frame = CGRectMake(0, 0, 0, 550); [self.view addSubview:search.view]; [search didMoveToParentViewController:self];
非常感謝!它的工作,我已經改變它爲searchView和它按預期工作。這種方法是對的嗎?將許多視圖控制器添加爲子視圖,添加到一些主視圖,他們都會將代表發佈給他,通知他何時刪除它們/執行其他操作? – Curnelious
我更喜歡使用UIView而不是UIViewController,因爲它是一個較小的對象。但這一切都取決於你的需求。如果你的子視圖沒有做太多你可以讓你的根視圖控制器來管理所有的uiview子視圖,你甚至不需要使用委託,但如果在子視圖邏輯中有很多事情可以繼續使用UIviewCOntroller。 – Greg