2013-10-03 1 views
0

모두 알고 있겠지만, Apple은 cordova/phonegap 앱으로 모든 종류의 골치 거리를 유발하는 iOS7에서 상태 표시 줄이 작동하는 방식을 변경했습니다.iOS7 phonegap/cordova 앱의 상태 표시 줄에 대한 내 웹보기 뒤의 배경색을 어떻게 변경합니까?

나는 20 픽셀로, 아래로 밀어 관리 한 장치는 다음과 같은 코드를 사용하여 iOS7에 실행중인 경우 :

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) { 
    [application setStatusBarStyle:UIStatusBarStyleLightContent]; 
    // handling statusBar (iOS6) by leaving top 20px for statusbar. 
    screenBounds.origin.y = 20; 
    self.window = [[UIWindow alloc] initWithFrame:screenBounds]; 
} 
else { 
    self.window = [[UIWindow alloc] initWithFrame:screenBounds]; 
} 
문제가

는이 코드가 생성되었음을 20 픽셀 간격이 같은 검은 색 배경을 가지고 이 :

내 코드가 만든이 공간의 배경색을 변경하려면 어떻게해야

Black status bar with white text

?

내 MainViewController.xib에 배경색이 흰색으로 설정되어 있습니다. 이 검은 배경색 속성은 어디에서 오는가?

MainViewController.xib attributes

많은 감사

답변

0

실제로 폰갭을 사용하고 있습니까 :

여기 내 MainViewController.xib의 속성은 무엇입니까?

UIWebView의 맨 위 안쪽에 여백을 추가하려면 UIWebView를 이동하지 말고 CSS를 사용해야한다고 생각합니다.

이 시도 : 네, 코르도바 3.0을 사용하고

function onDeviceReady() { 
    if (parseFloat(window.device.version) === 7.0) { 
     document.body.style.marginTop = "20px"; 
    } 
} 

document.addEventListener('deviceready', onDeviceReady, false); 
+0

. 그 자바 스크립트 코드를 사용하지만 절대적으로 배치 된 요소에서는 작동하지 않습니다. OS 버전에 따라 절대적으로 배치 된 요소에 조건부 stly를 계속 추가 할 필요가 없도록 기본 솔루션을 찾고 싶었습니다. 난 그냥 내 아이폰 5에서 내 애플 리케이션을 실행하고 그것은 시뮬레이터와 다르게 행동; 보기가 20 픽셀 아래로 밀리지 않고 배경이 흰색입니다. – remondo

+0

그래서 시뮬레이터에서 유일한 문제는 무엇입니까? –

+0

iOS7 시뮬레이터는 iOS6과 동일한 방식으로 상태 표시 줄을 표시합니다. 예를 들어 검은 색 배경, 흰색 텍스트는 검정색 배경을 흰색으로하고 싶다는 점을 제외하고는 정확합니다. 장치에서보기를 아래로 밀어 내 코드가 어떻게 든 무시되고 상태 표시 줄이 투명하고보기를 덮어 씁니다 그러나 이것은 다른 문제입니다! – remondo