NSMutableArray пуст, когда я вызываю его - PullRequest
0 голосов
/ 07 июля 2011

Когда я пытаюсь вызвать NSMutableArray из другого класса, он пуст, почему?

CLASS A

.h
@interface Dashboard : UIViewController {
    NSMutableArray *tablearrayCREDITS;

}
@property(nonatomic,retain)NSMutableArray *tablearrayCREDITS;

.m
@synthesize tablearrayCREDITS;

И я заполняю его данными из массива JSON. Это все работает какэто должно быть ..

CLASS B

.h
    #import "Dashboard.h"

    @interface CreditsAndDebits : UIViewController {


    //nothing needed here..

}

.m

@implementation CreditsAndDebits
@synthesize selectedIndexPath;
    NSMutableArray *thearray;

- (void)viewDidLoad {
    Dashboard *db = [[Dashboard alloc]init];
    thearray = db.tablearrayCREDITS;
}

// Когда я отлаживаю его и устанавливаю точку останова на том месте, где я размещаю панель мониторинга .. tablearrayCREDITS говорит, что объекты 0 ??, я невозьми?почему он становится пустым, когда я его называю?

Ответы [ 2 ]

0 голосов
/ 07 июля 2011

Массив, который вы вызываете, пуст, потому что он, вероятно, еще не инициализирован . Вам нужно инициализировать это представление перед вызовом. Вы можете сделать это с помощью метода init для этого представления.

Или вы можете инициализировать этот массив при запуске приложения. Вы можете сделать это в application didFinishLaunchingWithOptions в AppDelegate.

0 голосов
/ 07 июля 2011
- (void)viewDidLoad {

    Dashboard *db = [[Dashboard alloc]initWithNibName:@"Dashboard" bundle:nil...........];


    db.tablearrayCREDITS=[[NSMutableArray alloc]init];

    [db.tablearrayCREDITS addObject:@"madhu"];

    thearray = db.tablearrayCREDITS;


//here nslog them
}

//you have to create Dashboard object not mutable array
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...