SORU
6 Temmuz 2009, PAZARTESİ


ObjC Kategori üzerinden bir yöntemi geçersiz kılmak ve varsayılan uygulama diyorsun?

Kategoriler kullanırken, kendi yöntemleri ile uygulanması gibi geçersiz kılabilirsiniz:

// Base Class 
@interface ClassA : NSObject 
- (NSString *) myMethod;
@end
@implementation ClassA
- (NSString*) myMethod { return @"A"; }
@end

//Category
@interface ClassA (CategoryB) 
- (NSString *) myMethod;
@end
@implementation ClassA (CategoryB)
- (NSString*) myMethod { return @"B"; }
@end

Yöntemi "" kategori nets sonucu da dahil olmak üzere sonra "B". myMethod arıyorum

MyMethod Kategori uygulanması orjinal Sınıf Bir myMethod aramak için en kolay yolu nedir? Yakın olarak ben anlamak, kullanmak düşük seviye aramaları almak için orijinal yöntem kanca için Bir Sınıf ve ara, ama sanki orada bir sözdizimsel kolay yolu bu.

CEVAP
6 Temmuz 2009, PAZARTESİ


Eğer her zaman method swizzling (Ekle burada standart sorumluluk reddi.) kullanabilirsiniz objective-c çalışma zamanı karıştırmayı gerektirir bunu yapmak için hackish bir şekilde istiyorum Sen arbitrariliy seçiciler adlı olarak farklı yöntemler deposu, bunları gerektikçe çalışma anında takas sonra izin verecek.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DavidParody

    DavidParody

    17 EKİM 2009
  • LaKe Lightroom Tutorials

    LaKe Lightro

    22 Temmuz 2014
  • RawBrahs

    RawBrahs

    28 Aralık 2010