簡體   English   中英

從另一個視圖控制器向視圖控制器添加子視圖

[英]add subview to a view controller from another view controller

我有兩個視圖控制器類。 在第一個視圖中,我有一個圖像視圖,在第二個視圖控制器中,有一個文本視圖。 第二個視圖控制器具有完成按鈕,單擊“完成”按鈕后,我想在第一個視圖控制器的圖像上添加標簽,並在該標簽上傳遞文本視圖的文本。 有什么辦法嗎? 請給我建議。

使用委托。 在第二個視圖控制器上創建一個協議,並將第一個視圖控制器作為其委托。 使用委托方法將textview的文本作為消息發送給委托(或通常在類之間發送任何類型的數據)。

在第一視圖控制器中保留對第二視圖控制器的引用。

從第一視圖控制器在第二視圖控制器中調用公共函數。

視圖控制器A:

@interface ViewControllerA : UIViewController
{
@public
    NString *text;
}

查看控制器B:

@interface ViewControllerB : UIViewController
{
@public
    ViewControllerA *refToA;
}

從A啟動視圖控制器B的代碼:

ViewControllerB *vc = [[ViewControllerB alloc] initWithNibName:@"ViewControllerB" bundle:nil];
vc->refToA = self;
[self presentModalViewController:vc animated:YES];

在View Controller B中設置值:

refToA->text = @"text to pass";
[refToA.view addSubview:button];

視圖確實出現在A:

- (void)viewDidAppear:(BOOL)animated
{
   if (text != nil)
   {
     NSLog(@"%@", text);
     // create your button here
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM