我正在尝试更新文本字段的用户名字段。目前有一个占位符,其中写有“用户名”。我正在从设置文件中加载用户名,但为了清楚起见,我只会在用户名中进行硬编码。
- (void)viewDidLoad {
settings=[Settings new];
[settings loadData];
//username.text=settings.username;
username.text=@"Test";
}
由于某些原因,这不起作用!但是,如果我有一个按钮,当我点击它时,它将更新文本字段。
e.g。
- (IBAction)login:(id)sender{
username.text=@"test";
}
因此按钮会更新文本,但我无法从viewDidLoad更新。这是一个线程问题吗?我无法相信这么长时间的事情。
答案 0 :(得分:9)
此时可能尚未创建控件。
尝试在ViewController中设置- (void)viewDidAppear:(BOOL)animated中的值。
答案 1 :(得分:3)
我不知道为什么,但你只能在最初显示后更改文本字段的文本
=>使用- (void)viewDidAppear:(BOOL)animated
这将起作用
答案 2 :(得分:0)
您已将文本字段声明为属性中的IBOutlet。我犯的错误是我忘记将Outlets(文本字段)连接到Interface Builder中的文件所有者。