在加载视图之前设置UITextField的值

时间:2011-08-19 23:33:39

标签: objective-c cocoa-touch

假设我有一个class1,它有一个带有UITextField的视图和一个保存按钮,用于保存数组中字段的文本。现在我也有一个class2。在这个class2中,我想通过点击按钮加载class1视图。但是,我在显示此视图之前设置了UITextField的值,因此当class1出现时,UITextField中已经​​有一个字符串,并且可以通过点击进行编辑。这可能吗?

编辑:只有class2知道文本字段值是什么

编辑:我试过了

    [newInkView setInkTextField:[appDelegate.inks objectAtIndex:indexPath.row]];
    NSLog([appDelegate.inks objectAtIndex:indexPath.row]);
    [self.view addSubview:newInkView.view];
    [self presentModalViewController:newInkView animated:YES];

但是无法设置文本字段值。 NSLog确实显示了一些值

2 个答案:

答案 0 :(得分:1)

要获取课程发送的文本,您可以在class1中执行以下操作:

-(void)setTextString:(NSString*)value
{
yourField.text = value;
}

只要在显示视图之前调用它,它就会在加载视图时存在,授予你在class2中有class1的实例。

编辑:

通过使用NSUserDefaults在加载视图之前保存字符串并在加载视图时加载它来解决这个问题。

答案 1 :(得分:0)

为什么不使用该值设置视图控制器的属性,并让VC将值复制到viewWillAppear中的文本字段?