在IBAction中如何读取UITextField的值?

怎么在IBAction中读取UITextField的值?UITextField是通过编程创建的,所以不能在XCode设置@property@synthesize。 我的UITextField生成文件如下:

for(i=0; i<[fieldName count]; i++)
{  
UITextField *name= [fieldName objectAtIndex:i];  
frame= CGRectMake(fromLeft, fromTop, totalWidth, totalHeight); 
name= [[[UITextField alloc] initWithFrame:frame] autorelease];        
name.borderStyle= UITextBorderStyleRoundedRect;   
name.returnKeyType= UIReturnKeyDone;  
//name.placeholder = [fieldName objectAtIndex:i];   \
name.autocapitalizationType= UITextAutocapitalizationTypeWords;       
name.adjustsFontSizeToFitWidth= TRUE;  
name.keyboardType= UIKeyboardTypeDefault;  
[name addTarget:self action:@selector(doneEditing:) 
forControlEvents:UIControlEventEditingDidEndOnExit];     
[scroller addSubview:name];   
fromTop= fromTop+ 40;
}

我想问的是,怎么实现点击按钮(IBAction)就能读取各个TextBox的值?先谢过了

有一种方法,可以在UITextField中使用循环,继承self.view。把text添加给NSMutableArray。

 for (UITextField *field in self.view.subviews) {  
 if ([field isKindOfClass:[UITextField class]]) {  
 if ([[field text] length] > 0) {        
[someMutableArray addObject:field.text];  
 }  

}
}

不设置实体变量访问UITextField,应该在创建的时候标记下。

[textField setTag:1];

然后在访问的时候就可以从父视图的标记中读取:

UITextField *myTextField= [scroller viewWithTag:1];NSString *myString= myTextField.text;
  1. 在创建textfield后设置tag

    [name setTag:i];

  2. 通过textfield的tag属性获取

    UITextField *myTextField= [self viewWithTag:1];
    NSString *myString= myTextField.text;