2014-11-24 86 views
-1

我想补充的“电子邮件”数据我NSMutableArray所以每一个按钮被按下它的时候又增加了电子邮件的阵列,所以我结束了电子邮件地址的数组,但似乎无法让它工作。添加“数据”到NSMutable阵列 - Xcode的

我想我的问题是,我重新初始化数组所以清理出来,并可能需要在一些地方把初始化else..which我都试过了。

下面的代码让我增加一个地址,但每次IBAction叫我想我清除阵列,任何指针或帮助将是巨大

@property (strong, nonatomic) NSMutableArray *mutable; 

    @synthesize mutable; 
    - (IBAction)array:(id)sender { 

    mutable = [[NSMutableArray alloc]initWithObjects:self.person.email, nil]; 
    [mutable addObject:self.person.email]; 

    NSLog(@"ARRAY OF EMAILS %@",mutable); 

    } 
+0

为什么降级时,我问一个合理的问题? – 2014-11-26 07:40:02

回答

0

你是正确的 - 要初始化数组每次调用array:方法。您可以更改代码只有一次初始化:

- (IBAction)array:(id)sender { 
    if(!self.mutable) { 
     self.mutable = [[NSMutableArray alloc]initWithObjects:self.person.email, nil]; 
    } 
    [self.mutable addObject:self.person.email]; 

} 

作为一个侧面说明 - 你不必使用@synthesize此属性。阅读"Adopting Modern Objective-C"了解更多详情。

+0

伟大的答案,但我发现,如果我从该视图导航离开,然后回来给它的“数组”重新初始化(清除自身)..对不起意识到我并没有把在我的question..thanks – 2014-11-24 20:50:40

0

您是否使用的UIViewController?如果是,则在viewDidAppear方法中重置该数组。 如果您正在使用的UIView,然后创建自定义的方法来重置阵列,然后从父的viewController调用。