그래디언트에 대한 설명서를 읽고 있는데 약간 분실했습니다. 나는 뷰를 가지고 있으며, 그 뷰 내에서 rect (보기보다 작음) 내에서 아래에서 위로 위쪽으로 간단한 검은 색에서 회색의 선형 그라디언트를 그립니다. 하위 클래스를 만들지 않고 어떻게 할 수 있습니까? (뷰를 서브 클래스 화해야하는 많은 것들을 읽었습니다)?보기 내부에있는 rect 내부에 간단한 선형 그래디언트 그리기
나는 다양한 플랫폼에서 해본 적이있는 것처럼 간단하게이 방법을 찾고 있습니다. 다음과 같은 언어 (예 :-)) :
blackcolor = MakeBlack();
whiteColor = MakeWhite();
startPoint = MakeStartPoint();
endPoint = MakeEndPoint();
onthisgraphicport = SetGraphicPort(self.view);
clippingRect = MakeClipRect();
DrawGradient(from:whiteColor, to:blackcolor, from:startPoint, to:endPoint, onthisgraphicport, intoThisRect:clippingRect);
감사합니다.
중복 가능성 (http://stackoverflow.com/questions/422066/gradients-on-uiview-and-uilabels-on-iphone). 많은 투표를 통해 @Mirko의 답변을보십시오. 보기보다 작게하려면 그라디언트 레이어의 프레임을 더 작게 설정하십시오 (그라데이션 레이어를보기의 하위보기로 생각하십시오). – Anurag
@Anurag : 아니요, 우선 해결책은 하위 레이어를 삽입하고, 아무 것도 삽입하지 않으려 고합니다. 그리기 ... 두 번째 제공 솔루션은 drawRect로 작동합니다. 그라디언트를 그려야하는 내부의 뷰에 rect가 있어야합니다. – Oliver
'drawRect'를 사용하지 않고 * 및 *를 삽입하지 않음으로써 의미를 이해하지 못합니다. 그래디언트를 얻으려면 * 무언가 *를해야 할 것입니다. 마술처럼 그 자체에 나타나지는 않습니다. – Anurag