2013-08-13 3 views
0

간단한 질문 일지 모르지만 사과드립니다. 그리기 rect 사용하여 꽤 새로운 오전 및 내보기 컨트롤러에서 내 ViewDidLoad에서 그 그리기 rect 뷰 하위 클래스에있을 때 호출 할 싶어요. 지금까지해야 할 일은 이것 뿐이지 만 아무 것도하지 않습니다. 무엇을 추가해야합니까? 당신DrawRect 뷰 인스턴스화 ViewController에서

circleView = [[CircleView alloc] init]; 
[self.view addSubview:circleView]; 
[circleView setNeedsDisplay]; 

감사하는 것은 여기 내 서클보기

- (void)drawRect:(CGRect)rect 
{ 
    NSLog(@"worked"); 
    CGContextRef contextRef = UIGraphicsGetCurrentContext(); 
    CGContextSetRGBFillColor(contextRef, 0, 0, 255, 0.1); 
    CGContextSetRGBStrokeColor(contextRef, 0, 0, 255, 0.5); 

    CGContextStrokeEllipseInRect(contextRef, CGRectMake(100, 100, 25, 25)); 

} 

그게 내가 가진 모두 코드입니다. 프레임으로 초기화해야 할지도 모르지만 draw rect를 선택하는 방법을 모른다.

+0

을의 drawRect'입니까? 프레임이란 무엇입니까? 그것에 대해 다른 무엇을 말할 수 있습니까? –

+0

어떤 결과를 기대합니까? 그리고 CircleView에 코드를 보여주세요. – liuyaodong

+0

업데이트되었습니다. 고마워요! –

답변

3

자동으로 -drawRect:가 표시됩니다 처음 호출합니다 UIView를 들어, -viewDidLoad에 명시 적으로 [circleView setNeedsDisplay];를 호출 할 필요가 없습니다.
circleViewframe이 {0, 0; 0, 0}.

circleView = [[CircleView alloc] initWithFrame:CGRectMake(0, 0, 200, 200)]; 

을하거나 frame 속성을 설정합니다 : 당신은 아마 다음과 같이 그것을 의미 frame을 줄 필요가있다`라는 : 당신이 그것을 디버깅 할 때

circleView.frame = CGRectMake(0, 0, 200, 200); 
관련 문제