NSMutableArray から plist にデータを永続化する方法を学習するのに役立つ簡単なテスト アプリがあります。AppDelegate.m ファイルで「saveData」と呼ばれる ViewController メソッドを呼び出してデータを保存しようとするまで、すべてがうまく機能しているようです。
- (void)applicationDidEnterBackground:(UIApplication *)application
{
[ViewController saveData];
}
メソッドはViewController.hで明確に宣言されていますが、次のように、「セレクター「saveData」の既知のクラスメソッドはありません。
//
// ViewController.h
// PlistTest
//
// Created by Tim Jones on 10/30/13.
// Copyright (c) 2013 TDJ. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
@property (weak, nonatomic) IBOutlet UILabel *nameLabel;
@property (weak, nonatomic) IBOutlet UILabel *timeLabel;
@property NSMutableArray *mainActivityArray;
- (IBAction)buttonHit:(id)sender;
-(NSString *) getFilePath;
-(void) saveData;
-(void) loadData;
@end
ViewController.m に実装されているため、次のようになります。
//
// ViewController.m
// PlistTest
//
// Created by Tim Jones on 10/30/13.
// Copyright (c) 2013 TDJ. All rights reserved.
//
#import "ViewController.h"
#import "DataClass.h"
@interface ViewController ()
@end
@implementation ViewController
-(NSString *) getFilePath
{
NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
return [[pathArray objectAtIndex:0] stringByAppendingPathComponent:@"PlistTestData"];
}
-(void) saveData
{
[self.mainActivityArray writeToFile: self.getFilePath atomically:YES];
}
ViewController.h を AppDelegate.h にインポートしました。
私はかなり緑なので、ここにいる多くの人にとって問題は明白かもしれません. 助けていただければ幸いです。