Her sınıfın designated initialiser olması gerekir. UIImageView
bu kuralı izlerse (ancak bunu test etmedim), -init
numaralı telefonun -initWithFrame:
numaralı telefonu arayacağını öğreneceksiniz. Eğer init metodu çalıştırılır sağlamak istiyorsanız
, yapmanız gereken tek şey, ya böyle, ebeveyn sınıfın belirlenen Başlatıcı geçersiz olduğu:
//always override superclass's designated initialiser
-(id) initWithFrame:(CGRect)frame;
{
return [self initWithSomethingElse];
}
-(id) initWithSomethingElse;
{
//always call superclass's designated initializer
if((self = [super initWithFrame:CGRectZero])){
//do initialisation here
}
return self;
}
:
-(id) initWithFrame:(CGRect)frame;
{
if((self = [super initWithFrame:frame])){
//do initialisation here
}
return self;
}
Ya da böyle
+1 ancak adlandırma kurallarına uymak için lütfen init yönteminizi init 'init ile başlatın. – JeremyP
Whoops, gösteri isimleri oluştururken "foo" veya "bar" veya "myFunction" u çekmek için çok hızlıyım. –