我不确定如何重写此代码以避免编译器混淆。任何建议都将非常感激。 ZIndex是错误消息中标记的方法。
(void)stackByZIndexIn:(UIView *)container {
NSArray *sorted =
[container.subviews sortedArrayUsingComparator:^NSComparisonResult(id view1,
id view2) {
int z1 = [view1 respondsToSelector:@selector(zIndex)] ? [view1 zIndex] : 0;
int z2 = [view2 respondsToSelector:@selector(zIndex)] ? [view2 zIndex] : 0;
if (z1 > z2) {
return NSOrderedDescending;
}
if (z1 < z2) {
return NSOrderedAscending;
}
return NSOrderedSame;
}];