[英]How can i pass data back to parent view controller. am using addSubView method to show child view
我如何將數據傳遞回父視圖控制器。 即時通訊使用addSubView方法顯示子視圖。
addFields = [[AddFields alloc] initWithNibName:@"AddFields" bundle:nil];
[self.view addSubview:addFields.view];
現在,我想將數據從“ AddFields”視圖發送到我的父控制器。 我怎樣才能做到這一點。 誰能幫我..
一種簡單的方法是使用NSNotificationCenter參見此示例
當您要發送對象時,通過AddFields通知您
[[NSNotificationCenter defaultCenter] postNotificationName:@"notificaiton_name" object:object_you_want_to_send];
並在您的父視圖控制器中添加NSNotificationCenter的觀察者
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(method_you_want_to_call:) name:@"notificaiton_name" object:nil];
定義您的method_you_want_to_call:類似這樣的內容
-(void) method_you_want_to_call:(NSNotification *) obj{
//lets say you are sending string as object
NSString *string=(NSString *) [obj object] ;
}
注意: notificaiton_name必須匹配
您可以使用代理協議方法的其他方式...請參見此示例
使用委托在子視圖到父視圖之間向后傳遞數據。
最常見的方法如下:首先在父控制器中初始化一個string / int / float / ..(根據您的需要)。 例如: NString *string;
然后在AddFields視圖中,導入父控制器,然后創建父控制器視圖的對象。
ParentViewController *object=[[ParentViewController alloc]initWithNibName:@"ParentViewController" bundle:nil];
object.string=theValueYouWantToPass;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.