2

私はiOS開発に本当に慣れておらず、単純なテーブルビューを作成しようとしているので、テーブルビューコントローラーを追加し、それにカスタムクラスを追加して、アイテムを追加しようとしました。

そこで、新しい配列を作成しました。

@property (nonatomic, strong) NSMutableArray *activity;

そして、私はviewDidLoadで、配列にいくつかの項目を追加してみました。

for(int i = 0; i < 20; i++) 
{
    NSLog(@"Current item: %u", i);
    Item *item = [[Item alloc] init];
    item.time = @"14:30";
    item.text = @"A simple test";
    item.startedAgo = @"yesterday";
    item.project = @"testProject";
    [self.activity addObject:item];
}

NSLog(@"Activity count: %u", [self.activity count]);

ログは問題ないようです。配列の長さを出力しようとすると、0のままになります。

2012-05-02 14:12:50.772 coop_dev [15352:f803]現在のアイテム:0

..。

2012-05-02 14:12:50.783 coop_dev [15352:f803]現在のアイテム:19

2012-05-02 14:12:50.784 coop_dev [15352:f803]アクティビティ数:0

ここで何かが足りませんか?

4

2 に答える 2

2

オブジェクトを追加する前にアクティビティ配列を初期化しましたか?
viewDidLoadで、アクティビティ配列を次のように初期化します:-

self.activity = [[[NSMutableArray alloc]init]autorelease];
于 2012-05-02T06:23:48.543 に答える
2

Make sure you initialise your array before using it

self.activity = [[NSMutableArray alloc] init];

If your using ARC there is no need for autorelease.

于 2012-05-02T06:27:02.643 に答える