2011-02-01 43 views
1

我有一個UIScrollView,而我追加多個自定義的UIView的包含UITextFields ...從UITextFields訪問ParentViewController自定義視圖中

在這些文本字段我處理EditingChanged事件讓我做了一些計算,它們添加到一個UILabel ...

現在

...超出我的UIScrollView我有一個TextBox誰的價值,我需要從我的自定義視圖裏面的TextField訪問...

我可以滾動起來的層次和以某種方式通過它的標籤找到控制權?我試過使用ParentViewController,但那總是空。

任何幫助表示讚賞

回答

0

是在同一個UIViewController中的的UIScrollView外的文本框?您應該使用控制器來管理通信。在包含兩個文本框的最低級別處理EditingChanged。所以,如果它們在同一個UIViewController中,那麼它可以處理EditingChanged並且還可以引用文本框。

0

或者您可以使用UIApplicationDelegate。

  1. 聲明一個引用UISCrollView的實例,並將UIScrollView設置爲該實例。

    @interface YourAppDelegate YourDIScrollView * yourScrollView; } @property(nonatomic,retain)YourUIScrollView * yourScrollView; @end

  2. 不管你想要訪問滾動視圖,可以如以下這樣做,

    YouUIScrollView * yourScrollView =((YourAppDelegate *)[[UIApplication的sharedapplication]委託])yourScrollView。

+0

嗯,現在我。需要將它翻譯成MonoTouch(C#)! – Marko 2011-02-02 02:29:10

0

你可以走另一條路走下來的層次結構,以從下UITextField獲得的價值和UIScrollView之外進行計算。您可以訪問下級UITextField一種方法的情況如下:

foreach (scrollView.ViewWithTag(tagNum).SubViews.OfType<UITextField>()) 
{ 
    // get the value from the textfield then perform the required calculation 
} 

(這當然是假定你已經給了UIView「在某種程度上是你要添加一個標籤

相關問題