2011-04-19 52 views
1

在界面生成器中,我声明了一个UITextField,其标签为22.当我单击按钮时,我想更改文本。我尝试了这两种方法。第一种方法是。修改界面生成器中声明的UITextField

Main.m 
((UITextField*)[HomeController.view viewWithTag:22]).text = [NSString stringWithFormat:@"%d mins",minutes]; 

HomeController是一个UIViewController,我见过在同一个文件的其他部分工作。 此代码的结果是没有更新。

我试图实现这个的另一种方式是通过为文本字段添加IBOutlet。我在下面显示了Home.h中的IBOutlet。

@interface Home : UIViewController { 
    IBOutlet UITextField *safeTime; 
} 
@property (nonatomic,retain) UITextField *safeTime; 
@end 

我的主视图控制器具有Main.h

定义在该方法来更新文本字段这个类的一个实例,我有此代码。

self.HomeController.safeTime.text = [NSString stringWithFormat:@"%d mins",minutes]; 

使用此代码我得到了与以前的方法相同的结果。屏幕上没有任何更新。

如果任何人有任何建议如何让这两种方法的工作,它将不胜感激。 如果需要额外的说明,我可以提供。先谢谢您的帮助!

+1

您添加了相应的@synthesize到.m文件中?验证插座连接? – 2011-04-19 14:32:33

+0

我有合成语句。除了检查界面生成器,我将如何验证插座连接,以显示“插座”部分中的连接? – Silvae 2011-04-19 14:41:04

+0

我忘了发布最终结果。我重新启动了我的电脑,它工作。无论如何,谢谢你们。 – Silvae 2011-05-31 20:43:40

回答

0

首先,使用: [self.HomeController.safeTime setText:[NSString stringWithFormat:@"%d mins",minutes]];

如果仍然没有解决问题的你,请检查您的IB如果IBOutlet中连接到(右)文本框

+2

调用setText方法与在UItextField中使用.text属性相同。 – rckoenes 2011-04-19 14:36:17

+0

试了两个,都没有工作。 – Silvae 2011-04-19 14:36:43