Доступ к холсту из подкласса?
Я работаю с приложением C4 и создал подкласс C4Shape. У меня проблемы с доступом к холсту из подкласса, но я не уверен, как его проверить или как получить к нему доступ из другого объекта.
Это код, который я до сих пор:
#import "Platform.h"
@implementation Platform {
CGPoint o;
C4Timer *timer;
int speed;
}
-(void) setup {
speed = 10;
[self rect:CGRectMake(0, 0, 100, 100)];
timer = [C4Timer automaticTimerWithInterval:1.0f/30
target:self
method:@"push"
repeats:YES];
o = self.center;
}
+(id) platformWithRange:(CGRect)s {
Platform * bb = [Platform new];
bb.range = s;
return bb;
}
-(void) push {
// check boundaries
o.x-= speed;
if( 0 >= o.x - 50 ) {
o.x = range.size.width;
}
}
@end
1 ответ
Решение
Посмотрите на вторую часть этого ответа: /questions/40090998/sozdanie-klassov-c4/40091007#40091007
Вы можете создать свойство в своем подклассе, в которое вы будете устанавливать холст из основного рабочего пространства.
@implemenation C4WorkSpace
-(void)setup {
CustomSubclass *obj = [CustomSubclass new];
obj.canvas = self.canvas;
}
@end