2009-05-13 7 views

답변

147

첫 번째 단계에서 그릴 수있는 공간을 만들기 위해,있는 UIView의 서브 클래스를 정의하는 것입니다.

새 응용 프로그램으로 시작하는 경우, 가장 쉬운 방법은 "윈도우 기반으로 시작하는 것입니다 응용 프로그램 "템플릿.

새 파일로 이동하여 "Objectclass-C 클래스"를 "Subclass of"를 "UIView"로 설정하고 이름을 지정하십시오 (예 : MyView.m).

이제 "Resources"그룹을 열고 "MainWindow.xib"를 두 번 클릭하여 Interface Builder에서 엽니 다. 여기에서 "창"이라는 창이 열립니다. Cmd + Shift + L을 눌러 라이브러리를 불러오고 "보기"구성 요소를 창에 끌어다 놓고 모든 구성 요소를 볼 수 있도록 배치하십시오. 새 뷰를 선택한 상태에서 Cmd + 4를 눌러 Identity Inspector를 불러 와서 "Class Identity"아래의 드롭 다운을 클릭하고 MyView를 선택하십시오.

다음, 당신은의 drawRect 구현해야합니다 MyView.m의 방법을, 여기에 라인 그리는 몇 가지 예제 코드입니다 :

- (void)drawRect:(CGRect)rect { 
    CGContextRef c = UIGraphicsGetCurrentContext(); 

    CGFloat red[4] = {1.0f, 0.0f, 0.0f, 1.0f}; 
    CGContextSetStrokeColor(c, red); 
    CGContextBeginPath(c); 
    CGContextMoveToPoint(c, 5.0f, 5.0f); 
    CGContextAddLineToPoint(c, 50.0f, 50.0f); 
    CGContextStrokePath(c); 
} 

저장 모든 것을하고 "빌드하고 실행"을 클릭, 당신은 지금을 볼 수 아이폰에 짧은 빨간 선.

코어 그래픽에 대한 자세한 내용은 Apple 설명서를 참조하십시오. 또한 Xcode 문서 뷰어에서 CGContext로 시작하는 함수를 검색하고이를 탐색하는 것이 도움이된다는 것을 알았습니다. 사용하게 될 대부분의 Core Graphics 함수는 "CGContext"라는 용어로 시작합니다.

+0

감사합니다 토비아스 .... 그것은 나에게 도움이 .... –

+56

1 : 다음은 수직 중심의 수평 라인을 그릴 것입니다. – willc2

+0

+1 나를 도왔습니다 :) –

4

UIBezierPath을 사용하여 선을 그릴 수도 있습니다. 대신 RTFM의 코드로 응답에 대한

- (void)drawRect:(CGRect)rect { 
    CGFloat rectHeight = CGRectGetHeight(rect); 
    CGFloat rectWidth = CGRectGetWidth(rect); 

    UIBezierPath *line = [UIBezierPath bezierPath]; 
    [line moveToPoint:CGPointMake(0, rectHeight/2)]; 
    [line addLineToPoint:CGPointMake(rectWidth, rectHeight/2)]; 

    [[UIColor lightGrayColor] setStroke]; 
    [line stroke]; 
} 
관련 문제