添加的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]; 
} 

但阵列保持“零”。有人知道怎么修这个东西吗?

+2

你已经初始化了玩家吗? – Ares 2013-03-05 18:53:26

+0

@战神我相信我有。 – 2013-03-05 19:01:20

+0

@Josh Caswell我已经看过所有这些,他们都没有解决我的问题。 – 2013-03-05 19:02:05

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插座连接到视图控制器(通常是文件的所有者)。

+0

非常感谢您的帮助,包括所有这些内容,尽管似乎仍然没有正常运行 – 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; 
} 

我试过在一个示例项目同样的事情,效果不错。