AppDelegate에서 UINavigationBar 배경색을 변경하는 방법
UINavigationBar
배경 이미지 를 변경하는 방법을 알고 있습니다.
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"nabbar"] forBarMetrics:UIBarMetricsDefault];
바를 추가 다른 색상으로 설정하는 방법을 알고 있습니다 Views
. ..... 이제 이미지 를 사용하지 않고 배경색을 app delegate
. 각 뷰에서 매번 설정하고 싶어서 CGRect
.
시도 [[UINavigationBar appearance] setBackgroundColor:[UIColor colorWithRed:33/255.0 green:34/255.0 blue:36/255.0 alpha:1.0]];
했지만 작동하지 않는 앱 대리자에서 작동하는 코드를 수 없습니다.
누구든지 올바른 방향으로 나를 가리킬 수 있습니까?
당신이 사용할 수있는 [[UINavigationBar appearance] setTintColor:myColor];
iOS 7부터 [[UINavigationBar appearance] setBarTintColor:myColor];
및 [[UINavigationBar appearance] setTranslucent:NO]
.
[[UINavigationBar appearance] setBarTintColor:myColor];
[[UINavigationBar appearance] setTranslucent:NO];
다음 코드가 작동합니다.
[self.navigationController.navigationBar setBarTintColor:[UIColor greenColor]];
[self.navigationController.navigationBar setTranslucent:NO];
iOS 7 에서이 작업을 수행합니다.
[[UINavigationBar appearance] setBarTintColor:myColor];
구문 구문 :
UINavigationBar.appearance().barTintColor = UIColor.whiteColor() //changes the Bar Tint Color
AppDelegate didFinishLaunchingWithOptions에 넣는 앱 전체에서 지속됩니다.
Xcode 6.3.1로 쉽게 할 수 있습니다. 문서 개요에서 NavigationBar를 선택합니다. Attributes Inspector를 선택합니다. 반투명을 선택 취소합니다. Bar Tint를 원하는 색상으로 설정합니다. 완료!
스위프트 :
self.navigationController?.navigationBar.barTintColor = UIColor.red
self.navigationController?.navigationBar.isTranslucent = false
답변에서 언급 다른 했듯이을 사용할 수 setTintColor:
있지만 단색을 원하며 색조 개 색상 AFAIK를 설정할 수 없습니다.
솔루션은 프로그래밍 방식으로 이미지를 만들고 .NET을 통해 모든 탐색 모음의 배경 이미지로 해당 이미지를 설정하는 것 UIAppearance
입니다. 1x1 픽셀 이미지가 작동하는지 또는 정확한 크기의 내비게이션 막대가 필요한지 잘 모르겠습니다. 이 질문 의 두 번째 답변 에서 이미지를 만드는 방법을 확인하세요.
조언으로, 나는 다만 유형의 것들로 앱 델리게이트를 "오버로드"하고 싶지 않습니다. 내가하는 경향은 내가 원하는 모든 UIAppearance 항목을 설정하는 AppearanceConfiguration
하나의 공용 메서드 configureAppearance
로 명명 된 클래스를 만든 다음 앱 대리자에서 해당 메서드를 호출하는 것입니다.
뷰 컨트롤러 에서이 코드를 사용하여 UINavigation 배경색을 수 있습니다.
self.navigationController.navigationBar.backgroundColor = [UIColor colorWithRed:10.0f/255.0f green:30.0f/255.0f blue:200.0f/255.0f alpha:1.0f];
Swift 4.2 및 Xcode 10.1에서
AppDelegate에서 전체로 직접 탐색 모음 색상을 설명 수 있습니다.
에서 didFinishLaunchingWithOptions launchOptions:
코드의 라인 아래 쓰기
UINavigationBar.appearance().tintColor = UIColor.white
UINavigationBar.appearance().barTintColor = UIColor(red: 2/255, green: 96/255, blue: 130/255, alpha: 1.0)
여기
tintColor 는 뒤로 버튼, 메뉴 라인 이미지 등 배경 이미지를 설정하기위한 것입니다. (아래 좌우 메뉴 이미지 참조)
barTintColor 는 탐색 모음 배경색입니다.
특정 뷰 컨트롤러 탐색 모음 색상을 설정하려면 아래 코드를 작성하십시오. viewDidLoad()
//Add navigation bar colour
navigationController?.navigationBar.barTintColor = UIColor(red: 2/255, green: 96/255, blue: 130/255, alpha: 1.0)
navigationController?.navigationBar.tintColor = UIColor.white
색상 코드가 여기서 문제입니다. 195/255를 사용하는 대신 0.7647 또는 195.f / 255.f를 사용하십시오. 문제는 플로트 변환이 제대로 작동하지 않는 것입니다. 정확한 부동 소수점 값을 사용해보십시오.
'IT' 카테고리의 다른 글
두 개의 개의 연결 목록이 병합 확인하십시오. (0) | 2020.09.08 |
---|---|
EditText, 외부 터치에 대한 명확한 증가 (0) | 2020.09.08 |
Python의 네트워크에 IP가 어디에 있는지 확인할 수 있습니까? (0) | 2020.09.08 |
Eclipse에서 AVD 또는 SDK 관리자를 사용할 수 없습니다. (0) | 2020.09.08 |
Ruby on Rails : rake db : migrate 마이그레이션을 되돌리려면 어떻게해야합니까? (0) | 2020.09.08 |