[英]How to Add UIImage to NSMutableArray
我正在嘗試使用以下代碼將來自Web服務的UIImage
添加到我的NSMutableArray中:
for (int i=0; i<[totalRowCountString intValue]; i++)
{
NSString *criticsRatingString = [[JSON valueForKeyPath:@"movies.ratings.critics_rating"] componentsJoinedByString:@" "];
NSLog(@"criticsRatingString: %@", criticsRatingString);
if ([criticsRatingString isEqualToString:@"Certified Fresh"])
{
self.ratingImage = [UIImage imageNamed:@"rt_certified_fresh.png"];
}
else if ([criticsRatingString isEqualToString:@"Fresh"])
{
self.ratingImage = [UIImage imageNamed:@"rt_fresh.png"];
}
else if ([criticsRatingString isEqualToString:@"Rotten"])
{
self.ratingImage = [UIImage imageNamed:@"rt_rotten.png"];
}
else if ([criticsRatingString isEqualToString:@"Spilled"])
{
self.ratingImage = [UIImage imageNamed:@"rt_spilled.png"];
}
else if ([criticsRatingString isEqualToString:@"Upright"])
{
self.ratingImage = [UIImage imageNamed:@"rt_upright.png"];
}
[tomatorRatingImages addObject:self.ratingImage];
NSLog(@"tomatoRatingImages: %@", tomatorRatingImages);
}
但是我的NSLog for TomatoRatingImages返回NULL。 任何想法為什么它返回NULL?
更新:我的NSMutableArray已在我的viewWillAppear方法中初始化。
您必須先初始化數組,然后才能向其中添加對象。
NSMutableArray *tomatorRatingImages = [[NSMutableArray alloc] init];
NSMutableArray * tomatorRatingImages =[[NSMutableArray alloc]init];
[tomatorRatingImages addObject:[UIImage imageNamed:@"rt_spilled.png"]];
[tomatorRatingImages addObject:[UIImage imageNamed:@"rt_spilled1.png"]];
[tomatorRatingImages addObject:[UIImage imageNamed:@"rt_spilled2.png"]];
您可以在NSMutableArray中輸入多個圖像。
像這樣初始化
NSMutableArray * tomatorRatingImages =[[NSMutableArray alloc]initWithCapacity:3];
如果您具有NSMutableArray實例的屬性,則最好編寫getter對其進行初始化。 它只負責初始化變量,也僅在需要時才加載。
-(NSMutableArray *) tomatorRatingImages {
if(_tomatorRatingImages == nil) {
_tomatorRatingImages = [NSMutableArray alloc] init];
}
return _tomatorRatingImages;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.