NSArray назначение - PullRequest
       2

NSArray назначение

1 голос
/ 19 января 2010

У меня есть два viewController, и один должен передать массив другому, но на принимающей стороне я всегда получаю счет 0. Вот что я сделал

classA.h

Class A : UIViewController
{
@private 
    NSMutableArray *_array;
}

@property (nonatomic, retain ) NSMutableArray *array;
@end

classA.m

@implementation

@synthesis array =_array;

-(void) nowShow
{
    int objCount = [ _array count ];   // This is always coming as 0 though i tried various ways (listed below )
}
@end

classB.m

-(void) method:(id)sender {
    NSMutableArray *msgArray = [[NSMutableArray alloc] initWithCapacity:1];

    for ( int i = 0 ; i <objCount; i++ ){
        unsigned int idMsg = msgId[i];
        [msgArray addObject:[NSNumber numberWithUnsignedInt:idMsg]];
    }

    classA *classAController = [[classA alloc] initWithStyle:UITableViewStylePlain];    

    //[ classAController.array arrayWithObject
    //[classAController.array addObjectsFromArray:msgArray];
    [ classAController.array initWithArray:msgArray];
    //[classAController.array setArray:moveArray];
    [self presentModalViewController:classAController animated:YES];
}

Любое предложение, ребята

Ответы [ 2 ]

2 голосов
/ 19 января 2010

Вы не должны вызывать любой метод init, если только он не сразу после вызова alloc.

В свойствах все, что вам нужно использовать, это назначение:

classAController.array = msgArray;
2 голосов
/ 19 января 2010

Ключевое слово должно быть @synthesize, а не @ синтез

edit: также вы хотите синтезировать свойство "массив", а не переменную экземпляра _array

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...