2014-06-28 103 views
0

從我設法讓我的復位按鈕用下面的代碼工作的一個非常有耐心的用戶重置的TextField通過一些精彩的幫助:如何在滾動查看

- (IBAction)resetAction:(id)sender { 

    for (UIView *view in [self.view subviews]) { 
     if ([view isKindOfClass:[UITextField class]]) { 
      UITextField *textField = (UITextField *)view; 
      textField.text = @""; 
     } 

    } 

我現在遇到的問題是,這將不要重置滾動視圖中的文本字段。任何幫助將受到感謝!我很接近完成這個!

非常感謝

回答

0

你可以稱之爲recursivly方法:

- (void)resetTextfieldsInView:(UIView*)view { 

    for (UIView *v in [view subviews]) { 
     if ([v isKindOfClass:[UITextField class]]) { 
      UITextField *textField = (UITextField *)v; 
      textField.text = @""; 
     }else if ([v isKindOfClass:[UITextView class]]) { 
      UITextView *textView = (UITextView *)v; 
      textView.text = @""; 
     }else{ 
      [self resetTextfieldsInView:v]; 
     } 
    } 
} 

- (IBAction)resetAction:(id)sender { 
    [self resetTextfieldsInView:self.view]; 
} 
+0

謝謝!有沒有辦法添加textViews來重置以及? – PaulH

+0

再次感謝您!你是一個人生的滋味! – PaulH

0

如果文本框嵌入在一個滾動視圖,那麼你就需要遍歷滾動視圖的子視圖,即

for (UIView *view in [self.scrollView subviews])