Я проверял новые функции iOS 9 как разработчика, и некоторые из них, такие как StackView, выглядят потрясающе.
Когда я зашел в заголовочный файл UIStackView, я увидел это:
@property(nonatomic,readonly,copy) NSArray<__kindof UIView *> *arrangedSubviews;
Что такое __kindof на NSArray *. Можем ли мы теперь указать тип в NSArray *?
Маленький тест:
@interface DXTEST ()
@property (strong, nonatomic) NSMutableArray <__kindof NSString *> *strings;
@end
@implementation DXTEST
- ( instancetype ) init {
self = [super init];
if( self ) {
_strings = [NSMutableArray new];
[_strings addObject:@(1)]; <-- compiler warning wieeeeee
}
return self;
}
@end