2016-12-08 18 views
-1

私はユーザーが記入して後で使用するために保存するフォームを作成するアプリケーションを作成しています。保存する配列にカスタムクラスを保存する

@interface DataModel : NSObject 

@property (strong, nonatomic) NSString *whiskeyName; 
@property (strong, nonatomic) NSNumber *whiskeyRating; 
@property (strong, nonatomic) NSString *whiskeyColor; 
@property (strong, nonatomic) NSString *whiskeyNose; 
@property (strong, nonatomic) NSString *whiskeyFlavors; 
@property (strong, nonatomic) NSString *whiskeyFinish; 
@property (strong, nonatomic) NSString *whiskeyNotes; 

これらのフォームの複数のコピーが保存されます(アップルのNotesアプリケーションと思われます)。 NSStringsNSNumbersで構成されるクラスを作成しましたが、後でアクセスするにはNSArrayに保存する方法がわかりません。私はちょうどコアデータを使いこなし始めましたが、私が見つけたものはすべて単一のフォームしか保存できません。どのようにして、後で使用するために、複数のバージョンのクラスを配列に保存して編集することができますか?申し訳ありませんが質問があいまいですが、私は壁に私の頭を打っていると働いて解決策を見つけるのが苦労している。

答えて

1

私は正しくNSObjectをサブクラス化しており、このクラスの複数のインスタンスを配列に保存したいと思いますか?その場合、MutableArrayはオブジェクトを保持できるはずです:

// .m file 
#import "DataModel.h" 

@interface YourViewController 
    @property (strong, nonatomic) NSMutableArray *myArray; 
@end 

@implementation YourViewController 

- (void) viewDidLoad { 
    NSMutableArray *myArray = [[NSMutableArray alloc] initWithCapacity:numberOfObjectsToStore]; 

    DataModel *myClassInstance1 = [[DataModel alloc] init]; 
    myClassInstance1.whiskeyName= @"somevalue"; 
    myClassInstance1.whiskeyRating= 5; 

    DataModel *myClassInstance2 = [[DataModel alloc] init]; 
    myClassInstance2.whiskeyName= @"someothervalue"; 
    myClassInstance2.whiskeyRating= 2; 

    [myArray addObject:myClassInstance1]; 
    [myArray addObject:myClassInstance2]; 

} 
関連する問題