@@ -79,10 +79,10 @@ - (void)parseImageSetAtURL:(NSURL *)url;
79
79
NSArray *variants = [contents[@" images" ]sortedArrayUsingComparator: ^NSComparisonResult (id obj1,id obj2) {
80
80
if (![obj1[@" subtype" ]isEqualToString: obj2[@" subtype" ]]) {
81
81
if (obj1[@" subtype" ]) {
82
- return NSOrderedAscending ;
82
+ return NSOrderedDescending ;
83
83
}
84
84
if (obj2[@" subtype" ]) {
85
- return NSOrderedDescending ;
85
+ return NSOrderedAscending ;
86
86
}
87
87
}
88
88
@@ -127,15 +127,17 @@ - (void)parseImageSetAtURL:(NSURL *)url;
127
127
continue ;
128
128
}
129
129
BOOL isUniversal = [variant[@" idiom" ]isEqualToString: @" universal" ];
130
+ BOOL isRetina4Inch = [variant[@" subtype" ]isEqualToString: @" retina4" ];
130
131
NSString *indentation =@" " ;
131
132
if (!isUniversal) {
132
133
NSString *idiom = [variant[@" idiom" ]isEqualToString: @" iphone" ] ?@" UIUserInterfaceIdiomPhone" :@" UIUserInterfaceIdiomPad" ;
133
- [implementationappendFormat: @" if (UI_USER_INTERFACE_IDIOM() ==%@ ) {\n " , idiom];
134
+ [implementationappendFormat: @" if (UI_USER_INTERFACE_IDIOM() ==%@%@ ) {\n " , idiom, isRetina4Inch ? @" && [UIScreen mainScreen].bounds.size.height == 568.0f " : @" " ];
134
135
indentation =@" " ;
135
136
}
136
137
137
138
CGFloat scale = [variant[@" scale" ]floatValue ];
138
- NSString *filename = [variant[@" filename" ]stringByReplacingOccurrencesOfString: [NSString stringWithFormat: @" @%@ " , variant[@" scale" ]]withString: @" " ];
139
+ NSString *sizeExtension = isRetina4Inch ?@" -568h" :@" " ;
140
+ NSString *filename = [variant[@" filename" ]stringByReplacingOccurrencesOfString: [NSString stringWithFormat: @" @%@ " , variant[@" scale" ]]withString: sizeExtension];
139
141
NSString *scaleIndentation = [indentationstringByAppendingString: @" " ];
140
142
[implementationappendFormat: @" %@ if ([UIScreen mainScreen].scale ==%.1f f) {\n " , scaleIndentation, scale];
141
143
[implementationappendFormat: @" %@ image = [UIImage imageNamed:@\" %@ \" ];\n " , scaleIndentation, filename];