怎么在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;
在创建textfield后设置tag
[name setTag:i];
通过textfield的tag属性获取
UITextField *myTextField= [self viewWithTag:1];
NSString *myString= myTextField.text;