根据用户输入创建文本字段

时间:2012-02-03 09:52:29

标签: objective-c ios

我想根据用户输入创建文本字段。假设需要5个文本域

for (int x = 0; x < self.howMany; x++) 
{
    NSLog(@"%i", x_position);
    self.textFieldRounded = [[UITextField alloc] initWithFrame:CGRectMake(10, x_position, 300, 25)];
    self.textFieldRounded.borderStyle = UITextBorderStyleRoundedRect;
    self.textFieldRounded.textColor = [UIColor blackColor]; //text color
    self.textFieldRounded.font = [UIFont systemFontOfSize:17.0];  //font size

    [self.view addSubview:self.textFieldRounded];
    x_position += 30;
}

到目前为止,这么好。该代码创建了五个文本字段。问题是这些文本字段不是“唯一的”。每个文本字段都可以包含不同的信息。该怎么做才能收集到每个领域的信息?

4 个答案:

答案 0 :(得分:4)

为他们添加标签。

int i = 1;
for (int x = 0; x < self.howMany; x++) 
{
    NSLog(@"%i", x_position);
    self.textFieldRounded = [[UITextField alloc] initWithFrame:CGRectMake(10, x_position, 300, 25)];
 textFieldRounded.tag = i++;
 ...

然后,当您需要找到textfield 3时,请执行以下操作:

UITextField *textField = (UITextField *)[self.view viewWithTag:3];

答案 1 :(得分:1)

您可以为每个文字字段设置tag

self.textFieldRounded.tag = x;

然后,您可以使用标记来标识文本字段。您可以使用this technique遍历self.view以查找所有子视图(文本字段)。

答案 2 :(得分:0)

我认为您应该为每个信息采用不同的TextField,以便一切都清晰,如果您仍想使用一个文本字段,那么您可以为每个信息设置标记。

答案 3 :(得分:0)

您可以在NSMutableArray中添加对每个TextField的引用,然后使用类似

的内容遍历数组
for (UITextField *tmp in myArray) {
//do stuff with the textfield
}