2015-01-05 5 views
4

I이 인터페이스 Buider 나는 글로벌 응용 프로그램 색조 색상 설정하지 않은 경우에만 제대로 작동을 강조하는 이미지와 설정 UITabBar : 내가 설정의 UITabBar 색조 색상은 이미지에 작동하지

tab bar without tint color

[[UIView appearance] setTintColor:[TAStyleKit tintColor]]; 

을 사용하여 내 앱의 세계적인 색조 색상을 선택하면 모든 탭 이미지가 선택된 것으로 표시됩니다. 내가 탭을 클릭하고 다시 갈 때

enter image description here

만, 그들은 정확한 색상을 가지고있다.

enter image description here

내가 잘못 뭐하는 거지 : 여기에 회색이다 "무기"탭을 참고?

답변

8

편집 : 당신은 그냥 다음 변경해야처럼 절대로 내가 전에 쓴 신경 쓰지는 ...

[[UIView appearance] setTintColor:[TAStyleKit tintColor]]; 

으로 ... 당신이하려고했던

[[UITabBar appearance] setTintColor:[TAStyleKit tintColor]]; 

공지를 보이는 UITabBar 대신 UIView의 모양을 변경합니다. 나는 이것을 프로젝트에서 돌렸고 트릭을했다. 당신이 또는 기본 UIView.tintColor 코드를 삭제하지 않을 수없는 경우 다음

enter image description here

+0

나는 탭 당 하나 개의 이미지를하고 난 색조 색상 내가 모든 것을 삭제 – Jan

+0

이미지에 적용 할 싶어 I 당신이 찾고있는 것을 성취 할 해결책을 적어 썼다. UITabBar 대신 UIView의 모양을 설정했습니다. – timgcarlson

+0

나는 UIView에 색조를 설정하고 있는데, 왜냐하면 모든 UI 요소에 파란 색 대신이 색조 색상이 있기를 원하기 때문입니다. – Jan

5

enter image description here

는 더 나은 하나가 될 수 있습니다. 탭 표시 줄 안의 UIView에 tintColor를 기본 회색 색상으로 설정하면됩니다.

let view = UIView.appearance() 
view.tintColor = UIColor.redColor() 

let viewsInTabBar = UIView.appearanceWhenContainedInInstancesOfClasses([UITabBar.self]) 
viewsInTabBar.tintColor = UIColor(white: 144.0/255.0, alpha: 1) // default gray for inactive items 

let tabBar = UITabBar.appearance() 
tabBar.tintColor = UIColor.redColor() // actual highlight color 

불행하게도, 애플은 표준 회색 값 중 하나를 사용하지 않습니다 ...

+0

IOS 9.3 이상에서 작동합니까? –