UIColor를 사용할때에 흔히 어플리케이션에서 사용하는 RGB값을 사용할려고 하면 독특한 점이 있습니다. 바로 최대값을 1로 하는 float형 값을 입력받게 되는데요, 그래서 각각의 RGB값을 변환하여 입력해야 합니다.
예를 들면 colorWithRed:green:blue:alpha: 메서드의 경우에는 각각의 RGB값을 255로 나누어 사용해야 합니다. 마찬가지로 Alpha값은 최대 1로써 100%를 생각한다면 100으로 나누어 사용된다고 이해하시면 됩니다. 그래서 실제로 다음과 같이 메서드를 사용하게 됩니다.
[code][UIColor colorWithRed:128.0/255.0 green:68.0/255.0 blue:198.0/255.0 alpha:1];[/code]
이런 방식은 그다지 좋아 보이지 않습니다. 그래서 그냥 단순하게 RGB값을 입력 받을 수 있도록 간단한 메크로를 추가하도록 하겠습니다. 다음을 프로젝트명_Prefix.pch등에 추가하도록 합니다.
[code]#define RGB(r, g, b) [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:1]
#define RGBA(r, g, b, a) [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:a][/code]
이제는 다음과 같이 RGB값을 바로 사용하실 수 있습니다.
[code][somthingView setBackgroundColor:RGB(255, 251, 204)];[/code]
참고 : http://iphonedevelopertips.com/cocoa/uicolor-macros.html
[iPhone] UIColor 매크로 설정하여 사용하기
Leave a reply