UIImage
クラスをサブクラス化し、いくつかの変数を追加したカスタムinit
メソッドを追加しようとしています。ただし、新しいイニシャライザを使用して新しいオブジェクトを作成しようとすると、オブジェクトは常にnil
. 新しいinit
メソッドは次のとおりです。
- (id)initWithLat:(int)latitude andLong:(int)longitude andSize:(int)size {
self = [super initWithContentsOfFile:@"dot.png"];
if (self) {
self.lat = latitude;
self.longi = longitude;
self.dotScale = size;
}
return self;
}
私は正しくサブクラス化していると信じています。これが私のヘッダーファイルです:
#import <UIKit/UIKit.h>
@interface Dot : UIImage {
int lat;
int longi;
int dotScale;
}
@property int lat;
@property int longi;
@property int dotScale;
- (id)initWithLat:(int)latitude andLong:(int)longitude andSize:(int)size;
@end
Dot
にオブジェクトを追加しようとすると、エラーが発生しますNSMutableArray
。
dots = [[NSMutableArray alloc] init];
[dots addObject:[[Dot alloc] initWithLat:0 andLong:0 andSize:1]];
私の推測では、新しいイニシャライザに問題があると思われます。これをガイドとして使用していました。