2016-09-28 2 views
1

상태 표시 줄을 흰색으로 바꿀 때 많은 질문이 있습니다.하지만 상태 표시 줄 아래의 내용에 따라 iOS와 동일한 방법으로 흰색 또는 검정색으로 바꿀 수있는 방법을 알고 싶습니다. 9의 뮤직 앱은 어떤 API와도 동적으로 변경 될 수 있습니까? 아니면 상태 표시 줄의 색상을 수동으로 결정해야합니까?아래 내용에 따라 상태 표시 줄의 색상을 변경하십시오.

View controller-based status bar appearanceNO를 할당 info.plist에서 :

이 내가 (내가 원하는 바가 아니다) 이제 흰색으로 돌리겠다 방법이다. 다음에 내 app delegate'sdidFinishLaunchingWithOptions :

UIApplication.shared.statusBarStyle = .lightContent 

답변

1

하는 수동 상태 표시 줄의 색상을 결정해야합니다. 상태 표시 줄의 배경이 어두운 지 확인하고 가벼운 내용 스타일을 표시 할 수 있습니다.

UIColor가 아래 코드에 의해 더 어둡다는 것을 확인할 수 있습니다.

extension UIColor 
{ 
    func isLight() -> Bool 
    { 
     let components = CGColorGetComponents(self.CGColor) 
     let brightness = ((components[0] * 299) + (components[1] * 587) + (components[2] * 114))/1000 

     if brightness < 0.5 
     { 
      return false 
     } 
     else 
     { 
      return true 
     } 
    } 
} 

도움이나 도움이 필요하시면 알려주세요.

+0

답장을 보내 주셔서 감사합니다. 당신의 노력에 감사드립니다, 내가 어떻게 그 색상의 어둠을 확인할거야하지만 난 어떻게 statusBar의 배경색을 얻을거야 모르겠어요 –

+0

기본 상태 표시 줄 자체가 명확한 배경 색상이 있습니다. 그래서 당신은 단지 상태 표시 줄 뒤에있는 객체 또는 뷰에서 색상을 얻습니다. 어떤 문제가 있다면 – MinuMaster

+0

당신은 당신에게 uiview 컨트롤러에 대한 더 자세한 정보를 제공합니다 ... – MinuMaster

관련 문제