@@ -58,8 +58,16 @@ - (IBAction)sliderValueChanged:(UISlider *)sender;
58
58
59
59
- (NSArray *)flagImages ;
60
60
{
61
- // return @[[UIImage imageNamed:@"USA"], [UIImage imageNamed:@"Canada"], [UIImage imageNamed:@"UK"], [UIImage imageNamed:@"Austrlia"]];
62
- // return @[[CGTAImagesCatalog usaImage], [CGTAImagesCatalog canadaImage], [CGTAImagesCatalog ukImage], [CGTAImagesCatalog australiaImage]];
61
+ NSArray *allFlagImages =nil ;
62
+
63
+ // Initial version: full of strings that you have to type correctly!
64
+ // Misspell any of these and your app will crash on trying to add `nil` to an array.
65
+ allFlagImages = @[[UIImageimageNamed: @" USA" ], [UIImageimageNamed: @" Canada" ], [UIImageimageNamed: @" UK" ], [UIImageimageNamed: @" Australia" ]];
66
+
67
+ // New version: get the properly compiler-checked spelling from the image catalog.
68
+ allFlagImages = @[[CGTAImagesCatalogusaImage ], [CGTAImagesCatalogcanadaImage ], [CGTAImagesCatalogukImage ], [CGTAImagesCatalogaustraliaImage ]];
69
+
70
+ // But really, why not use a little runtime hackery because we can?
63
71
return [CGTAImagesCatalogallImages ];
64
72
}
65
73