我有两个UITextFields
,它的输入存储为字符串player1
和player2
。这些UITextFields
位于由popOver segue调用的ViewController
。如何在视图更改后让UITextFields
继续显示文字?如何在视图更改时保留UITextField文本
我在ViewController
无济于事的viewDidLoad
部分试图textFieldOne.text = player1;
。有任何想法吗?
我有两个UITextFields
,它的输入存储为字符串player1
和player2
。这些UITextFields
位于由popOver segue调用的ViewController
。如何在视图更改后让UITextFields
继续显示文字?如何在视图更改时保留UITextField文本
我在ViewController
无济于事的viewDidLoad
部分试图textFieldOne.text = player1;
。有任何想法吗?
如果您加载的视图的代理不是ViewController
,那么您的代码将不会执行。因此,请确保您的代码位于加载视图的代理上。也使用[textFieldOne setText:player1]
。调用setter方法总是更好,而不是直接设置伊娃。然后确保您的UITextField
不是零和正确绑定。使用textFieldOne = [[UITextField alloc] init]
来初始化它。如果问题仍然存在,请尝试[textFieldOne setText:self.player1]
。希望它有帮助..
编辑: 得到了解决方案在这里。你应该使用NSUserDefaults
,这样你的玩家名字就可以存储起来,并且可以在每个视图中使用,甚至在重新打开你的应用程序之后(如果你不需要这个,你可以在午餐时间擦除默认设置,下面是你需要的一堆代码变化:
hardOne.m:
- (void)viewDidLoad
{
[super viewDidLoad];
[hard1ON setOn:switchState animated:NO];
//read player names to user defaults
[textFieldOne setText:[[NSUserDefaults standardUserDefaults] stringForKey:@"player1"]];
[textFieldTwo setText:[[NSUserDefaults standardUserDefaults] stringForKey:@"player2"]];
}
- (IBAction) returnKey1
{
player1 = [textFieldOne text];
[players addObject:(player1)];
//set player1's name to user defaults
[[NSUserDefaults standardUserDefaults] setValue:[textFieldOne text] forKey:@"player1"];
}
- (IBAction) returnKey2
{
player2 = [textFieldTwo text];
[players addObject:(player2)];
NSLog(@"array: %@",players);
//set player2's name to user defaults
[[NSUserDefaults standardUserDefaults] setValue:[textFieldTwo text] forKey:@"player2"];
}
如果我使用的是'textFieldOne = [[的UITextField的alloc]初始化]'行?代码,当我尝试将文本放入'textFieldOne'时,我得到一个异常错误,但它仍然无法工作,但我不确定是否与该视图中的逻辑有关.DidLoad将两个textField设置为player1和player2在他们有任何存储在他们之前..钍我输入数据,并且我不确定当我重新打开ViewController时是否保存了这些变量。嗯,令人困惑。 – 2013-03-07 20:53:45
转到[Gists](https://gist.github.com)上传您的完整代码。从这里很难说出来。或者更好的是,通过电子邮件将您的项目发送给[email protected] – Moray 2013-03-08 05:22:50
我通过电子邮件向您发送了我的代码,非常感谢您的帮助 – 2013-03-08 16:54:09
你可以发布任何代码尤其是,你如何创建这些文本字段 – dreamzor 2013-03-07 21:14:23