2014-07-16 6 views
1

그라디언트 막대를 만들어서 색을 바꿀 수있게하려면 어떻게해야합니까?그라디언트 막대 만들기 ios

UIPanGestureRecognizer을 쉽게 추가하고 UIView 내에 번역을 얻을 수는 있지만 UIColor의 RGB 값을 어떻게 적절히 변경할 수 있습니까?

enter image description here

+0

그라데이션 배경을 만드는 방법을 묻는다면 이미지를 만들어 배경으로 사용해야합니다. – carloabelli

+0

@ cabellicar123이 내 질문을 편집했는데 그것이 내가 묻는 것이 아닙니다. 감사합니다 – Apollo

+0

Ahh. 나는 지금 본다. 명확히 해 주셔서 감사합니다. – carloabelli

답변

2

대신 RGB 색상을 사용하여, 나는 HSB를 사용합니다. 스 와이프에 따라 색조를 변경하십시오.

화면의 상단을 0.0으로, 하단을 1.0으로 처리하면 손가락을 위에서 아래로 스 와이프 할 때 색상이 전체 스펙트럼을 통과해야합니다. 그 다음에

CGFloat percentTranslation = currentY/self.view.bounds.size.height; 
[UIColor colorWithHue:percentTranslation saturation:1.0 brightness:1.0 alpha:1.0] 
+0

아마도 당신은 percentTranslation의 의미에 대해 자세히 설명 할 수 있습니까? 감사! – Apollo

+1

비율은 사용자가 속한 막대의 백분율입니다. 막대의 상단은 1.0입니다. 막대의 바닥은 0.0입니다. – Fogmeister

1

나는 전에 이것을했다. 의심의 여지없이 가장 쉬운 방법은 png 이미지를 만들어 사용하는 것입니다.

픽셀 당 색상을 계산할 수 있지만 이미지를 사용하는 것이 훨씬 빠릅니다.

사실. 내 앱에서 볼 수있는 풀 컬러 선택 도구를 만들었습니다. https://itunes.apple.com/gb/app/game-of-life/id477039315?mt=8

두 번째 스크린 샷의 색상 막대는 단지 png입니다. 그리고 컬러 스퀘어는 투명한 이미지를 사용합니다. 투명한 이미지는 검정색 투명 그라디언트가 아래에서 위로, 흰색 투명 그라데이션이 왼쪽에서 오른쪽으로 나타납니다.

나는 술집에서 색을 선택할 때 이미지보기의 배경색을 설정합니다.