したがってUITextFields
、アプリケーションの 1 つのビューに 3 つ、別のビューに 5 つのラベルがあります。このアプリの目的は、ユーザーが最大 3 行のテキストを入力し、クールなアニメーションを実行させることです。私がやろうとしているのは、ユーザーが私のビューで作成した最新の 5 つのエントリをラベル付きで記録/表示することです。つまり、ユーザーがテキストフィールドを使用してアプリに入力した 5 つの以前のものを表示したいと思います。
フォーマット (textfield1 の文字列、2 の文字列、3 の文字列) を使用して、各ラベルにテキストを表示したいと思います。これを実現するために使用することを考えていNSUserDefaults
ました。あなたが正しい方向に私を向けることができれば、私はそれを感謝します、ありがとう! また、明確にする必要がある場合は、お知らせください。
これが私が今していることです...
- (IBAction)dismissUserInputPage {
link4 = [CADisplayLink displayLinkWithTarget:self selector:@selector(moveTextInputDown)];
[link4 addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSRunLoopCommonModes];
[link3 invalidate];
userInputButton2.hidden = YES;
userInputButton1.hidden = NO;
NSString *line1 = textField1.text;
NSString *line2 = textField2.text;
NSString *line3 = textField3.text;
NSUserDefaults *line1Text = [NSUserDefaults standardUserDefaults];
[line1Text setObject:line1 forKey:@"line1Text"];
NSUserDefaults *line2Text = [NSUserDefaults standardUserDefaults];
[line2Text setObject:line2 forKey:@"line2Text"];
NSUserDefaults *line3Text = [NSUserDefaults standardUserDefaults];
[line3Text setObject:line3 forKey:@"line3Text"];
}
- (IBAction)presentHistoryView {
historyView.hidden = NO;
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];
historyView.alpha = 1.0;
[UIView commitAnimations];
historyButton1.hidden = YES;
historyButton2.hidden = NO;
NSUserDefaults *line1Text = [NSUserDefaults standardUserDefaults];
NSString *tempString1 = [line1Text stringForKey:@"line1Text"];
NSUserDefaults *line2Text = [NSUserDefaults standardUserDefaults];
NSString *tempString2 = [line2Text stringForKey:@"line2Text"];
NSUserDefaults *line3Text = [NSUserDefaults standardUserDefaults];
NSString *tempString3 = [line3Text stringForKey:@"line3Text"];
historyLabel1.text = [NSString stringWithFormat:@"%@, %@, %@", tempString1, tempString2, tempString3];
}
これに関する問題は、ユーザーがさらにテキストを入力したときに、最初のエントリを別のラベルに移動する方法がわからないことです。