2014-06-28 104 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])