无法访问块内的强大属性

时间:2013-12-14 10:44:07

标签: ios

我有一个强大的属性NSMutableArray条目,当我分配一些值时,它显示为null。这是我的代码

#import "parseOperation.h"
@interface AppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;
@property (nonatomic, strong) NSMutableArray *entries;

@end    

////////     AppDelegate.m

 __weak parseOperation *weakParser = parser;

parser.completionBlock = ^(void) {

    if (weakParser.appRecordList) {

        dispatch_async(dispatch_get_main_queue(), ^{
            NSLog(@"weakParser.appRecordList%@",weakParser.appRecordList);//showing proper result

            self.entries=[[NSMutableArray alloc]init];
            self.entries=weakParser.appRecordList;
            NSLog(@"self.entries=====%@",self.entries);//getting null value

        });
    }


    self.queue = nil;
};

在解析器类内部,如果我打印weakParser.appRecordList,它总是显示正确的结果,但在AppDelegate.m中,有时它显示为null。

2 个答案:

答案 0 :(得分:0)

成功

@property (nonatomic, strong) __block NSMutableArray *entries;

否则它只是一个副本。

答案 1 :(得分:0)

也许试试:

        self.entries=[[NSMutableArray alloc] initwithArray: weakParser.appRecordList];