2 lanhailvcao lanhailvcao 于 2012.09.26 10:00 提问

在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的值?先谢过了

3个回答

MrsSeven7
MrsSeven7   2012.09.26 11:54
已采纳

有一种方法,可以在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];  
 }  

}
}

MrsSeven7
MrsSeven7 不用客气.
接近 6 年之前 回复
lanhailvcao
lanhailvcao 谢谢
接近 6 年之前 回复
hjue
hjue   2012.09.28 17:15
  1. 在创建textfield后设置tag

    [name setTag:i];

  2. 通过textfield的tag属性获取

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

lanhailvcao
lanhailvcao 谢谢你的回答
接近 6 年之前 回复
Mr_me
Mr_me   2012.09.26 11:50

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

[textField setTag:1];

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

UITextField *myTextField= [scroller viewWithTag:1];NSString *myString= myTextField.text;
lanhailvcao
lanhailvcao 谢谢你的回答
接近 6 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
三十而立,从零开始学ios开发(四):IOS控件(1),Image View、Text Fie
长话短说,谢谢大家的关注,这篇写了好长时间,下面继续学习ios。我将用2到3篇的篇幅来学习iphone上的一些常用控件,包括Image View、Text Field、Keyboard、Slider等等,这篇的内容包括ImageView和Keyboard的使用。完成后的效果图如下: 1)创建一个新的project,选择“Single View Application”,命名为“Con
IOS - 获取UITextField的输入文本
当UITextField文本改变时, 根据内容更新数据, 通过写监听事件即可. 添加监听:[timesField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged]; // 监听事件监听事件:// 监听改变按钮
03-QQ登录界面
#import "ViewController.h" @interface ViewController () @property (weak, nonatomic) IBOutlet UITextField *qqField; @property (weak, nonatomic) IBOutlet UITextField *pwdField; - (IBAction)login; @end @implementation ViewController - (IBAction)login { NSLog(@"QQ号是:%@, 密码是:%@", self.qqField.text, self.pwdField.text); } @end
获取UITableViewCell中UITextField的值方法总结
UITableViewCell的contentView中的UITextField的值获取有几种方法,本人简单总结一下。 1.  获取UITextField所以Cell的NSIndexPath,知道了NSIndexPath就知道了这个UITextField是干什么的了。 可以在- (BOOL)textField:(UITextField *)textField shouldChangeChara
Swift - 文本输入框(UITextField)的用法
Swift - 文本输入框(UITextField)的用法 原文地址:http://hangge.com/blog/cache/detail_530.html  作者:yuhang 1,文本框的创建,有如下几个样式: UITextBorderStyle.None:无边框 UITextBorderStyle.Line:直线边框 UITextBorderStyle.Rou
[iOS开发] UITextField 获取输入内容
在iOS7以下我们可以通过UITextField的delegate方法来获取 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { NSString *text = [textField
UITextField值变化则赋值的小技巧
给textfield加上事件,当有变化的时候 [textfield addTarget:self action:@selector(textFieldWithText:) forControlEvents:UIControlEventEditingChanged]; 添加事件---赋值。 - (void)textFieldWithText:(UITextField *)textF
iOS_(id)sender
在IOS开发中根据(id)sender获取控件信息(UIButton,UITextField) -(IBAction) editingEnded:(id) sender { // the cast goes here, lets assume there's more than one UITextfield // in this Owner and you want
实现UITextField值变化的实时监视
原来认为这个是很简单的基本问题,上网搜索以后发现基本的处理方法大概有四种 1、KVO方式 [textField addObserver:self forKeyPath:@"text" options:0 context:nil]; 2、直接添加监视 [textField addTarget:self  action:@selector(valueChanged:)  forControlE
iOS 实时监听UITableViewCell中的UItextField的值的变化
项目中有一个需求:每一个UITableViewCell中有一个UItextField,当所有的UItextField输入完成后,点击保存按钮,上传信息。 在这个过程中,只要任意一个cell中的UItextField的输入发生变化,就要得到UItextField中的值,并对当前控制器中的相应属性进行赋值。其中有两个cell是选择国家和省市的,点击这两个cell需要弹出一个控制器,点击相应的选择后,发