Вопрос

У меня проблемы выяснение, как получить строку состояния в iOS 7, чтобы использовать цвет моей навигации.Я использую UINavigationController в сочетании с библиотекой SWRevealController для скользящего меню NAV.

Вот как страница выглядит прямо сейчас:

Введите описание изображения здесь

Я хочу, чтобы полоса состояния наследует серый цвет панели NAV.Как я могу сделать это?

Это было полезно?

Решение

Вы можете изменить info info.plist и установить «просмотр контроллера на основе состояния строки», как NO

в AppDelegate, вы должны добавить

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
.

для AppDelegates DidfiniShlaunchingWithOptions.

Надеюсь, это будет работать для вас.

Другие советы

в iOS 7 навигационная панель высота изображения составляет 64 пикселей.Вам необходимо создать два изображения, один для навигации стержня для iOS 7 с высотой 64 пикселей и другой для iOS 6 или менее высотой 44 пикселей

Тогда используйте этот код

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0)?YES:NO) {
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"your 64 image"] forBarMetrics:UIBarMetricsDefault];
 } 
else 
{
 [self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"your 44 image"] forBarMetrics:UIBarMetricsDefault];
}
.

Сделайте пользовательский вид и установите цвет навигационной панели к этому представлению, поместите этот вид на место состояния строки и измените цвет строки состояния до прозрачного. Счастливое кодирование

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0)?YES:NO) {
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"newImage.png"] forBarMetrics:UIBarMetricsDefault];
 } 
else 
{
 [self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"previousImage.png"] forBarMetrics:UIBarMetricsDefault];
}
.

Установите делегат навигационного бара, чтобы быть текущим контроллером просмотра и прикрепить панель навигации к вершине.

class ViewController: UIViewController, UINavigationBarDelegate {

@IBOutlet weak var navigationBar: UINavigationBar!

override func viewDidLoad() {
    navigationBar.delegate = self
}

func positionForBar(bar: UIBarPositioning) -> UIBarPosition {
    return .TopAttached
}
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top