我做了一個小的代碼添加其他對象的NSArray
NSArray* _options = [NSArray arrayWithObjects:[NSDictionary dictionaryWithObjectsAndKeys:[UIImage imageNamed:@"2"],@"img",name,@"text"
, nil],nil];
現在,我想添加其他對象_options。我該怎麼辦? 我做了更多的測試,但沒有成功。 感謝所有
我做了一個小的代碼添加其他對象的NSArray
NSArray* _options = [NSArray arrayWithObjects:[NSDictionary dictionaryWithObjectsAndKeys:[UIImage imageNamed:@"2"],@"img",name,@"text"
, nil],nil];
現在,我想添加其他對象_options。我該怎麼辦? 我做了更多的測試,但沒有成功。 感謝所有
首先,創建一個NSMutableArray,因爲當你看到後適合在你的代碼,你可以對它進行更改:
NSMutableArray *newOptions = [NSMutableArray alloc]init];
[newOptions setArray:_options];
[newOptions addObject:yourObject];
可以使用[NSArray arrayByAddingObject:]
_options = [_options arrayByAddingObject:object];
或改變_options
至NSMutableArray
NSMutableArray *_options = [NSMutableArray arrayWithObjects:[NSDictionary dictionaryWithObjectsAndKeys:[UIImage imageNamed:@"2"],@"img",name,@"text"
, nil],nil];
[_options addObject:object];
,您可能需要使用現代語法
NSMutableArray *_options = [@[@{@"img":[UIImage imageNamed:@"2"],@"text":name}] mutableCopy];
[_options addObject:object];
無法對象添加到NSArray,要做到這一點,你需要一個。
但是,您可以與創建時添加對象的NSArray:arrayWithObjects
的NSArray不允許作任何更改;您可以使用NSMutableArray
,而不是像這樣:
NSMutableArray *mutable = [_options mutableCopy];
[mutable addObject:yourObject];
NSDictionary的是,它不能突變一樣。
'NSArray'沒有方法'addObject:'我不滿意它,因爲這是錯誤的答案。 –
塗料NSMutableArray – klcjr89
我想再次downvote。 'newOptions = _options'不會奇蹟般地改變'_options'到'NSMutableArray' –