在我的iphone应用程序中,我已在scrollView中动态创建了一些UITextField。并在xib中添加了一个按钮。在该按钮的TouchUpInside事件中,我打开了UIImagePickercontroller以打开照片库并在UIImageView上获取所选图像。
现在,当modalview被解雇时,我的UITextField中的值就会消失。
如何保留UITextField值?
txt = [[UITextField alloc] initWithFrame:CGRectMake(10.0f, 30.0f, 200.0f, 30.0f)];
[txt addTarget:self action:@selector(keyDown:)forControlEvents:UIControlEventEditingDidEndOnExit];
txt.textColor = [UIColor blackColor];
txt.borderStyle = UITextBorderStyleBezel;
txt.autocorrectionType = UITextAutocorrectionTypeNo;
[fieldArray addObject:txt];
使用for循环我将txt添加到NSMutableArray fieldArray。
以下是我从TextFields
获取值的代码NSMutableArray *insertValues = [[NSMutableArray alloc]init];
//Taking values from textFields
for (int i=1; i<=nooffields; i++) {
UITextField *tf = (UITextField *)[self.view viewWithTag:i];
NSLog(@"TF : %@",tf.text);
if (tf.text.length<=0) {
tf.text=@"";
}
[insertValues addObject:[NSString stringWithFormat:@"'%@'",tf.text]];
}
编辑: 此外,当我在此textFields中显示数据库中的值并尝试编辑它时。它给了我空值。
可能是什么原因?如果还有其他选择吗?请帮帮我
答案 0 :(得分:3)
UITextField *textField=[[UITextField alloc]init];
[textField setFrame:CGRectMake(x,y, width, hight)];
[textField setBorderStyle:UITextBorderStyleRoundedRect];
[self.view addSubview:textField];
答案 1 :(得分:0)
滚动视图用于填充的信息应存储在滚动视图外部,例如NSMutableDictionary
。因此,每次调用cellForRowAtIndexPath
时,它都可以从该源检索信息。所以我建议你将UITextField
的文本存储在字典中。您可以通过其标签号对其进行索引。这样你就不会松开它所包含的一切。
我希望它可以帮到你
干杯
答案 2 :(得分:0)
我终于解决了我的问题。
当调用presentModalViewController时,我暂时将textField的值存储到数据库中。
我将这些值检索回viewWillAppear上的textFields。
这可能不是一个非常有效的解决方案,但它适用于我的情况。
希望这有助于某人。
感谢您的所有回复。