1
我正在使用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
谢谢!这真的很酷,但我想知道在课堂上是否有这样做,因为这样,我不需要移动所有的形状,并在主画布中包含所有的动作? – tailedmouse
如果你正确设计你的课程,他们可以是独立的。如果你遵循上面的技巧和链接的答案,你需要为每个类的实例进行初始化,然后将其传递给画布的引用。一旦实例有了引用,它就可以用它来确定它与画布的相对位置。 –
酷!谢谢!!! – tailedmouse