Bir Objective-C blok özelliği tanımlamak mümkün, ancak Xcode 4'te tam kod tamamlama var mı?Xcode kod tamamlama ile Objective-C Block özelliği
typedef void (^CompletionBlock)(MyObject *myObj);
ve sonra özellik tanımlamak: Ben bloğu tanımlamak için bir typedef kullanırsanız
@property (nonatomic, copy) CompletionBlock completionBlock;
ve sonra @synthesize
mülkiyet Tam kod alamadım setter çağırırken tamamlanma. Xcode typedef'i kullanacak ve bundan dolayı kod tamamlama, blok parametreleriyle birlikte eksiksiz blok sözdizimini kullanmaz, typedef'i kullanır.
yerine Typedef tam blok sözdizimini kullanan başlığında bir yöntem olup prototip tanımlarsak:
@property (nonatomic, copy) void (^completionBlock)(MyObject *myObj);
ve sonra @synthesize
kullanımı, Resim ayarlayıcı tam kod tamamlama kullanılarak yakın geliyor Ben @synthesize
ve çalışırsanız, Nihayet
[self setCompletionBlock:(void (^)(MyObject *)) { ... }
: sözdizimi ama en önemlisi o parametre isimleri dışarıda bırakır Daha sonra ayarlayıcı uygulama geçersiz kılmak veya başlığında prototip koyun:
- (void)setCompletionBlock:(void (^)(MyObject *myObj))completionBlock {...}
bir uyarı özelliği tipi erişimci türü eşleşmiyor belirten yükseltilir. Sözdizimini sonlandırmaya çalışmamın bir önemi yok, hem kod özelliği hem de kodun tamamlanması için tam sözdizimi olan bir belirleyici tanımlayamıyorum. Pastamı alabilir miyim ve ben de yiyebilir miyim?
Teşekkürler!
sorusunu harkens ... bir cazibe gibi, çalışacak? Azaltılmış işlevsellik ve yarı yedek bir kod satırı için? Belki de bu Apple’ın demesidir ... ___ "bunu yapma!" ___ ?? –