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