2010-11-26 3 views
0

Ich habe ein Objekt Sprite:Wie verschiebt man ein NSObject zu einem Punkt (x, y)? wie folgt definiert

@interface Sprite : NSObject { 
CGFloat x;      // x location 
CGFloat y;      // y location 
CGFloat r;      // red tint 
CGFloat g;      // green tint 
CGFloat b;      // blue tint 
CGFloat alpha;     // alpha value, for transparency 
} 

Im initWithCoder Funktion der Ansicht enthält instanziiert ich es unter Verwendung von:

sprite = [[Sprite alloc] init]; 
sprite.x = 50; 
sprite.y = 100; 
sprite.width = 100; 
sprite.height = 200; 
sprite.r = 0.0; 
sprite.g = 1.0; 
sprite.b = 0.0; 

und i richtig ein grünes rect sehen. Nun würde Ich mag es verschieben: i definiert eine moveTo Verfahren wie dieses

- (void) moveTo: (CGPoint) p 
{ 
    x = p.x; 
    y = p.y; 
} 

aber wenn ich nenne es passiert nichts ... Ich weiß nicht, wie mein Objekt

Kann mir jemand helfen neu zu zeichnen mich?

Vielen Dank im Voraus! c.

Antwort

1

NSObject sind nicht Drawable. Wenn Sie ein Zeichenobjekt haben möchten, sollten Sie UIView oder seine Unterklasse verwenden, die alle Methoden zum Zeichnen selbst haben wie drawRect

4

Wie sehen Sie eine grüne Rect? wo zeichnest du es? NSObject kann nicht zeichnen ...

Sie es von einem UIView ableiten könnte und Ihre moveTo so sein ändern:

- (void) moveTo: (CGPoint) p 
{ 
    self.frame.origin = p; 
    [self setNeedsDisplay]; 
} 
Verwandte Themen