マスタービューコントローラーのテーブルビューセルに、ユーザーが入力しているものを保存するiPad用のマスター詳細アプリを作成しています(ポップオーバービューのボタンを使用して、そのポップオーバービューのラベルにテキストを配置します)。
したがって、基本的には、inputDisplayLabel と呼ばれる UILabel を含むポップオーバー ビューがあり、ユーザーがそのボタンのテキストを押すボタンはすべて、その UILabel に入ります。Enter ボタンを押すと、そのテキストが tableviews セルに追加されます。今、そのテーブル ビューにあるものを保存して、アプリケーションを終了して最初からやり直したときに、テキストがテーブルビュー セルに残るようにしたいと考えています。
SaveValue というボタンを追加しようとして、次のようにコーディングしました。
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:self.inputDisplayLabel.text forKey:@"savedValue"];
[defaults synchronize];
今、次のコードで loadValue という別のボタンを追加してロードしようとしました:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
self.tableView = [defaults objectForKey:@"SavedValue"];
しかし、うまくいきません。別のボタンを使用する必要がないように、アプリケーションの起動時にそこにあるように、実際にロード コードをどこに配置すればよいでしょうか。
誰かが私を助けてくれることを願っています。ありがとう。
編集:
-(void)setTheTextOfLabelWith:(NSString *)str
{
text = str;
if (!_objects) {
_objects = [[NSMutableArray alloc] init];
}
//[_objects insertObject:[NSDate date] atIndex:0];
[_objects insertObject:[[UILabel alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.frame.size.width, self.view.frame.size.height)] atIndex:0];
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
[self.tableView insertRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
[self.inputViewPopover dismissPopoverAnimated:YES];
}