在下面的代碼中,我試圖將對象添加到數組。沒有錯誤,但不添加對象。對不起,問這個非常基本的問題。需要幫助添加對象到數組時遇到問題
的NS對象定義
//DataDefinition.h #進口
@interface DataDefinition : NSObject
@property (nonatomic, retain) NSString *dataHeader;
@property (nonatomic, retain) NSMutableArray *dataDetails;
@end
的DataDefinition實現
#import "DataDefinition.h"
@implementation DataDefinition
@synthesize dataHeader;
@synthesize dataDetails;
@end
的顯示錶頭部分 //DataDisplay.h #進口
#import "DataDefinition.h"
@interface DataDisplay : UITableViewController
@property (strong, nonatomic) NSMutableArray *dataSet;
@property (strong, atomic) DataDefinition *individualData;
@end
顯示屏實現部分
//DataDisplay.m
#import "DataDisplay.h"
@interface DataDisplay()
@end
@implementation DataDisplay
@synthesize dataSet;
@synthesize individualData;
- (void)viewDidLoad
{
[super viewDidLoad];
individualData.dataHeader = @"Header1";
individualData.dataDetails = [[NSMutableArray alloc] initWithObjects:@"Header1-Detail1", @"Header1-Detail2", @"Header1-Detail3", nil];
//This didnot add
[dataSet addObject:individualData];
NSLog(@"Count of objects is %d:",[dataSet count]);
//Nor did this
dataSet = [[NSMutableArray alloc] initWithObjects:individualData, nil];
NSLog(@"Count of objects is %d:",[dataSet count]);
self.title = @"DataDisplay";
}
我嘗試這樣做。但是我得到一個錯誤,表示'DataDefinition'沒有可見的@interface聲明選擇器'alloc' – user1509593
您是否在DataDisplay.m文件中導入了正確的標題?即該文件是否具有到DataDefinition.h文件的簡潔#import路徑?如果這個類擴展了NSObject,那就不應該有兩種方式; alloc/init在那裏。 –
好吧,DataDefinition.h是由File - > New - > File(Cocoa touch,Objective C)類創建的NSObject。 DataDisplay.h有#import「DataDefinition.h」和DataDefinition.m有#import「DataDisplay.h」 – user1509593