簡體   English   中英

從子視圖iPhone向視圖控制器傳遞數據

[英]Pass data to view controller from subview iPhone

可能是一個簡單的問題,但我還沒有找到解決方案。 我有幾個帶有一些滑塊的視圖控制器,拖動它們后,將數字輸入標簽。 我還希望有一個簡單的彈出式鍵盤,在同一標簽中輸入數字。 我創建了一個稱為鍵盤的視圖控制器,當在當前視圖控制器上點擊一個按鈕時,我會這樣做:

 - (IBAction)callKeypad:(id)sender
{
    Keypad *keypadController = [[Keypad alloc] initWithNibName:@"Keypad" bundle:nil];
   self.keypadViewController = keypadController;
   [self.view addSubview:keypadController.view];

    [keypadController release];

彈出鍵盤時,當前視圖控制器仍在后台可見。 當我點擊小鍵盤上的數字時,我希望結果立即顯示在當前視圖控制器中。 我猜我想做的是讓一個視圖控制器將其輸出發送到另一視圖控制器。

謝謝你的幫助。

您應該創建一個主要對象所遵循的委托協議,以便Keypad可以向其委托人(主要對象)發送消息。

有關如何創建委托協議的問題,請參見以下問題: 如何在Objective-C中創建委托?

您有很多選擇。

  1. 就像Alexsander Akers所說的那樣,您可以使用委托和協議。
  2. 另一個選項是NSNotificationCenter,它允許您將消息發送到已注冊興趣的任何其他類。
  3. 最簡單/最丑陋的選擇是在“所有者”視圖中創建一個更新方法,並將所有者視圖傳遞給子視圖,並在需要時讓子視圖調用該更新方法。

暫無
暫無

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

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