Мое приложение PhoneGap было испорчено на iOS 7, как, по-видимому, и большинство из них поначалу - строка состояния была чистой, а текст был поверх (перекрывая) панель навигации моего приложения на основе HTML. Я исправил это:
В [имя приложения] info.plist:
View controller-based status bar : NO
Status bar style : UIStatusBarStyleLightContent
В MainViewController.m под - (void)viewWillAppear:(BOOL)animated
находится:
self.view.frame = [[UIScreen mainScreen] applicationFrame];
[super viewWillAppear:animated];
NSArray *vComp = [[UIDevice currentDevice].systemVersion
componentsSeparatedByString:@"."];
if ([[vComp objectAtIndex:0] intValue] >= 7) { // iOS 7 or above
CGRect oldBounds = [self.view bounds];
/* Changing the -20 to 0 takes away the black bar
at the top, making the status bar text overlap
my content again... positive 20 of course makes
my content cut off by 20px at the top, so obviously
this is the cause of the problem */
CGRect newBounds = CGRectOffset(oldBounds, 0, -20);
[self.view setBounds:newBounds];
}
Я не буду делать снимок панели настроек файла MainViewController.xib, потому что я почти уверен, что они не имеют значения из-за того, что я установил в info.plist? Дайте мне знать, если я ошибаюсь.
Мое приложение также поддерживает вращение, если это имеет значение. И я использую Кордову 2.1.0.
ВОПРОС
Мой HTML-код обрезается на 20 пикселей внизу из-за того, что я добавил, пытаясь заставить строку состояния iOS 7 отображаться правильно. Если я нахожусь в нижней части страницы в приложении и провожу пальцем, чтобы прокрутить вниз дальше, я действительно вижу нижнюю часть своей страницы, но когда я поднимаю палец, она все еще обрезается на 20 пикселей (дайте мне знать, если это бессмысленно). Что здесь не так? И как мне это исправить? В iOS 6 и ниже это НЕ проблема — все идеально.
Спасибо!