Xcode13 iOS15 이상에서 StatusBar 색이 나오지 않을때

2022. 5. 24. 15:03개발자료/iOS


반응형

_

Xcode13으로 개발툴을 업데이트후 iOS15.4.1에서 아래의 문제가 발생.  

UINavigationBar 의 색상등을 제어하기 위해 [UINavigationBar appearance]의 함수들을 사용했는데 이것을 Xcode13, iOS15 이상에서는 정상적으로 지원하지 않는것 같다. 
관련된 코드들을 주석처리 하고 나서 정상적으로 화면이 보이는걸 확인.

[UINavigationBar appearance] 관련 함수를 제거 전

[[UINavigationBar appearance] setBackgroundColor:[UIColor colorWithRed:0.973 green:0.973 blue:0.980 alpha:1.00]];
[[UINavigationBar appearance] setTranslucent:NO];
NSDictionary *dicTextAttr = @{NSForegroundColorAttributeName:RGB_HEX(0x000000)};
[[UINavigationBar appearance] setTitleTextAttributes:dicTextAttr];

 

[UINavigationBar appearance] 관련 함수를 제거한 후

UINavigationBarAppearance *appearance = [[UINavigationBarAppearance alloc] init];
[appearance configureWithOpaqueBackground];
[appearance setBackgroundColor:[UIColor colorWithRed:0.973 green:0.973 blue:0.980 alpha:1.00]];
[[UINavigationBar appearance] setScrollEdgeAppearance:appearance];
[[UINavigationBar appearance] setStandardAppearance:appearance];
NSDictionary *dicTextAttr = @{NSForegroundColorAttributeName:RGB_HEX(0x000000)};
[[UINavigationBar appearance] setTitleTextAttributes:dicTextAttr];

코드가 잘못되었을 수도 있지만 우선 위 코드로 수정후 기존과 동일하게 화면에 표시되는 걸 확인함.

 

 

반응형