我有兩個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