Ios 再次进入该页面时清除UITextfield数据

Ios 再次进入该页面时清除UITextfield数据,ios,uitextfield,Ios,Uitextfield,我有一些动态分配的文本字段,我在其中输入文本 现在我有两个问题 1) 单击2-3次按钮后,我的意思是更改视图并返回到与文本字段中的数据不被删除相同的视图,文本字段中以前的数据存在。 我用的代码是 answerTextField.text = @""; answerTextField.text = nil; 2) 我无法删除添加来自textfield.text的数据的textfield数据 -(void) keyPressed: (NSNotification*) n

我有一些动态分配的文本字段,我在其中输入文本

现在我有两个问题 1) 单击2-3次按钮后,我的意思是更改视图并返回到与文本字段中的数据不被删除相同的视图,文本字段中以前的数据存在。 我用的代码是

    answerTextField.text = @"";
    answerTextField.text = nil;
2) 我无法删除添加来自textfield.text的数据的textfield数据

      -(void) keyPressed: (NSNotification*) notification { 
if ([[[notification object]text] isEqualToString:@" "])
{
    UITextField *textField = (UITextField *)[self.view viewWithTag:nextTag];
    textField.text = @"";
    [textField becomeFirstResponder];
    nextTag = textField.tag;
}
else
{
    [[NSNotificationCenter defaultCenter] removeObserver: self name:UITextFieldTextDidChangeNotification object: nil];

    NSLog(@"TextField tag value :%d",tagCount);
    NSLog(@"TextField next tagg tag value :%d",nextTag);

    if (tagCount == nextTag+1) 
    {
        UITextField *textField = (UITextField *)[self.view viewWithTag:nextTag];
        [textField resignFirstResponder];
        NSLog(@"append string :%@",appendString);
    }
    else
    {
        NSLog(@"TextField nexttag value before :%d",nextTag);

        nextTag = nextTag + 1;
        NSLog(@"Letter is%@",[[notification object]text]);

        str= [[NSString alloc]initWithFormat:@"%@",[[notification object]text]];
        NSLog(@"TextField String :%@",str);

        NSLog(@"TextField nexttag value after :%d",nextTag);

        [appendString appendString:[NSString stringWithFormat:@"%@",str]];
        NSLog(@"Content in MutableString: %@",appendString);
    }

    NSLog(@"The tags in keypressed:%d",nextTag);
    UITextField *textField = (UITextField *)[self.view viewWithTag:nextTag];
    [textField becomeFirstResponder];
}
// For inserting Spaces taken from array.    
if(tagCount+300 == nextTag)
{
    for (int m=0  ; m< [intArray count]; m++) 
    {
        [appendString insertString:@" " atIndex:[[intArray objectAtIndex:m]intValue]];
        NSLog(@"FinalString : %@",appendString);
    }
}

要清除文本字段,请在视图中执行以下操作:

  NSArray *arraysubViews = [self.view subViews];

  for(UIView *subView in arraysubViews){

      if([subView isKindOfClass:[UITextField class]]){
          // if(subView.tag == MY_TEXT_VIEW_TAG)
           (UITextField *)subView.text = @"";
       }
   }
这将删除视图中每个UITextField中的
文本。如果只需要清除某些文本字段,请取消对代码的注释;它将检查
标记

编辑

  NSArray *arraysubViews = [self.view subviews];

  for(UIView *subView in arraysubViews){

      if([subView isKindOfClass:[UITextField class]]){
          // if(subView.tag == MY_TEXT_VIEW_TAG)
          UITextField *textField = (UITextField *)subView;
          textField.text = @"";
       }
   }

UIView没有
子视图
方法。取而代之的是
子视图。

当在
视图中将消失时,您在做什么:
视图将出现:
?听起来您应该删除其中任何一个中的文本。如果UITextField中的ClearOnBeginediting提供了您想要的行为,您也可以查看它。@DavidRönnqvist:我什么都没做,请看我只使用了一个viewcontroller并添加了视图。我尝试了您提供的这段代码,应用程序正在崩溃,并说:-[UIView子视图]:无法识别的选择器已发送到实例0xff13370,请参阅我仅获取了一个viewcontroller并添加了视图。请尝试在文本字段中设置标记,然后在设置子视图文本之前给出满足这些标记的条件。(您可能希望尝试[subView setText:@”“]而不是(UITextField*)subView.text=@“”@rakeshNS:也尝试过该代码,还是同样的问题,你能告诉我,subView.text应该替换什么,因为它在那里给我带来了错误。@sailaja好的,不要复制粘贴上面的代码,从你的评论中可以清楚地看出,没有称为subView的方法,它应该是subView。所以像这样更改代码NSArray*arraysubViews=[self.view子视图];您肯定不会出错。为了安全起见,您可以像UITextField*textField=(UITextField*)子视图一样;textField.text=@“;而不是写(UITextField*)子视图。text=@“;@rakeshNS:将尝试一下并让您知道。
  NSArray *arraysubViews = [self.view subviews];

  for(UIView *subView in arraysubViews){

      if([subView isKindOfClass:[UITextField class]]){
          // if(subView.tag == MY_TEXT_VIEW_TAG)
          UITextField *textField = (UITextField *)subView;
          textField.text = @"";
       }
   }