2010-11-26 1 views
0

난 다음 Sprite 객체 정의한 다음 함유 뷰의 initWithCoder 함수에서 NSObject를 Point (x, y)로 이동하는 방법은 무엇입니까?

@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 
} 

제가 사용을 통해 인스턴스 :

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; 

및 내가 올바르게 녹색 RECT 참조. 지금 나는 그것을 이동하고 싶습니다 :이

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

같은 moveTo 메소드 정의하지만 난 그게 아무 일도 발생하지 호출 할 때 ... 난 내 개체

수있는 사람의 도움을 다시 그려야하는 방법을 모른다 나를?

미리 감사드립니다. c.

답변

1

NSObject의이 드로어 블 오브젝트 없습니다. 드로어 블 객체를 원한다면 drawRect와 같은 드로잉을위한 모든 메소드가있는 UIView 또는 그 서브 클래스를 사용해야합니다.

4

녹색 직사각형은 어떻게 보입니까? 어디에서 그려? NSObject의 당신은 UIView의에서 파생하고 이렇게 될 당신의 moveTo을 바꿀 수

... 그릴 수 없습니다 :

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