添加的UITextField输入的NSMutableArray
我想补充UITextField
输入到NSMutableArray
使用以下IBActions
,连接到“没有结束编辑”的UITextFields
的一部分:添加的UITextField输入的NSMutableArray
- (IBAction) returnKey1
{
[textInputOne addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];
[textInputOne resignFirstResponder];
[players addObject:textInputOne.text];
}
- (IBAction) returnKey2
{
[textInputTwo addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];
[textInputTwo resignFirstResponder];
[players addObject:textInputTwo.text];
NSLog(@"array: %@",players);
}
,我已经初始化玩家阵列中,像这样的viewDidLoad
部分:
- (void)viewDidLoad
{
[super viewDidLoad];
players = [[NSMutableArray alloc] init];
}
但阵列保持“零”。有人知道怎么修这个东西吗?
UITextField
当用户点击返回时不发送任何操作。因此,当用户点击返回时,您不会收到“结束编辑”操作。
UITextField
当辞职第一响应者时发送“结束编辑”。当用户通过设置文本字段的代表并执行textFieldShouldReturn:
来点击返回时,您可以让其退出第一响应者。首先在ViewController.m
的顶部找到班级延伸。编辑(或添加它,如果它不存在)申报该类符合UITextFieldDelegate
:
@interface ViewController() <UITextFieldDelegate>
@property (nonatomic, strong) IBOutlet UITextField *textFieldOne;
@property (nonatomic, strong) IBOutlet UITextField *textFieldTwo;
@end
接下来,实施textFieldShouldReturn:
在班里以使文本字段辞职第一响应:
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return NO;
}
最后,在您的xib中,将每个文本字段的delegate
插座连接到视图控制器(通常是文件的所有者)。
非常感谢您的帮助,包括所有这些内容,尽管似乎仍然没有正常运行 – 2013-03-05 22:02:11
我希望你已经正确地设置了代表文本框。正如你所分配的玩家阵列中viewDidLoad中尝试用下面的代码分配给文本框
- (IBAction) returnKey1
{
[players addObject:textInputOne.text];
}
- (IBAction) returnKey2
{
[players addObject:textInputTwo.text];
}
两个returnKey1 & returnKey2 IBActions真的结束编辑事件。 现在辞职的按键板
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return YES;
}
我试过在一个示例项目同样的事情,效果不错。
你已经初始化了玩家吗? – Ares 2013-03-05 18:53:26
@战神我相信我有。 – 2013-03-05 19:01:20
@Josh Caswell我已经看过所有这些,他们都没有解决我的问题。 – 2013-03-05 19:02:05