2012-06-18 50 views
0

我需要通过单击按钮将名为productName的文本字段的内容添加到名为cartArrayNSMutableArray通过单击按钮将对象从UITextField添加到NSMutableArray

在按钮操作事件中,我写道:

NSString *productName = [NSString stringWithFormat:@"%@", productName.text]; 
cartArray = [[NSMutableArray alloc] init]; 
[cartArray addObject:productName]; 

NSLog(@"Cart Array==%@", cartArray); 

但我需要添加文本框的内容是每次用户点击按钮。这里在控制台中,前面的数组内容没有显示,即每次都不会被添加。

向我建议我需要在viewDidLoad或其他地方做什么?

+1

如果我是你,我会重新考虑他们的答案接受。即使正确,当前接受的答案与其他一些答案相比也是狗屎。 – Gerstmann

+1

@ExplodingRat是的,我已经使它正确,那时我是新的iOS所以...任何方式感谢您的审查.. –

回答

1

您每次按下按钮时都会重新创建cartArray,从而覆盖前一个条目。将数组的初始化移至viewDidLoad或init方法。

另外productName.text已经是一个字符串,不需要做stringWithFormat。

+0

是的它的工作原理没有stringWithFormat。感谢bennythemink –

+0

没问题@AjitSatarkar – bennythemink

0

因为每次它正在初始化您的数组:

cartArray = [[NSMutableArray alloc] init]; 

你应该每次都没有初始化,在viewDidLoad初始化一次,然后在按钮操作添加对象。

+0

是的谢谢Nuzhat .. –

0

只是声明数组中viewdidload

cartArray = [[NSMutableArray alloc] init]; 

和删除操作事件通话功能的阵列。

+0

谢谢SenthilKumar再一次帮助了我。 –

+0

行..没问题我的朋友.. – Senthilkumar

1

试试这个代码

- (void)viewDidLoad:(BOOL)animated { 
     [super viewDidLoad:animated]; 
     cartArray = [[NSMutableArray alloc]init]; 
} 


- (IBAction)clicked:(id)sender { 
     [cartArray addObject:productName.text]; 
     NSLog(@"Cart Array==%@",cartArray); 
}