Zmiana Koloru tekstu paska stanu na ekranie powitalnym iOS 7

Wiem, że to już jakieś stackoverflow pytania , które mówią, jak zmienić pasek stanu dla wszystkich kontrolerów widoku. Obecnie zmieniam kolor paska stanu w ten sposób:

if(IS_IOS7)
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

W application:DidFinishLaunching

Dodatkowo zmieniłem wartość UIViewControllerBasedStatusBarAppearance w pliście na NO. Jednak na ekranie splashscreen stills pokazuje tekst paska stanu z czarnym kolorem.

Czy można zmienić kolor tekstu paska stanu w splash screen ?

Author: CodeBender, 2013-09-19

6 answers

W pliku PLIST projektu Dodaj właściwość " Styl paska stanu "(kluczem jest UIStatusBarStyle). Następnie Ignoruj wszystkie możliwe wartości wymienione na liście rozwijanej dla tej właściwości i zamiast tego wpisz UIStatusBarStyleLightContent.

I nie musisz ustawiać UIViewControllerBasedStatusBarAppearance na NO w pliście, możesz ustawić preferredStatusBarStyle, które chcesz mieć do kontrolerów widoku.

 205
Author: Vinzzz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-19 15:22:47

Możesz to zrobić bez pisania żadnej linii kodu
Wykonaj następujące czynności, aby kolor tekstu paska stanu był biały w całej aplikacji

On you project plist file:

  • Styl paska stanu: UIStatusBarStyleLightContent
  • Wyświetl pasek stanu oparty na kontrolerze: NO
  • pasek stanu jest początkowo Ukryty: NO
 32
Author: Lucas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-11-06 17:15:46

Możesz wykonać następujące czynności, aby uzyskać pasek stanu koloru światła w całej aplikacji.

  1. Wybierz nazwę projektu w Nawigatorze projektu.
  2. Wybierz nazwę celu z listy w lewej kolumnie edytora projektu.
  3. Kliknij ogólne na górze edytora projektu.
  4. Ustaw Styl Paska Stanu - > Light

W pliku plist dodaj następujące wartości:

  1. Styl paska stanu - UIStatusBarStyleLightContent
  2. Wyświetl pasek stanu oparty na kontrolerze-nie

To pomoże ci uzyskać pasek stanu w kolorze białym w całej aplikacji, w tym ekran powitalny.

 14
Author: Anooj VM,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-28 07:25:57

Ustaw UIViewControllerBasedStatusBarAppearance Na No w pliście

Następnie dodaj następujący kod w opcji did finish launch

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {

   [application setStatusBarStyle:UIStatusBarStyleLightContent];

    self.window.clipsToBounds =YES;

    self.window.frame =  CGRectMake(0,20,self.window.frame.size.width,self.window.frame.size.height-20);
}

Proszę postępować zgodnie z tym kodem, który zadziałał dla mnie

 7
Author: Preejith augustine,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-24 08:42:25

Możesz wykonać następujące czynności, aby uzyskać pasek stanu koloru światła w całej aplikacji.

Wybierz nazwę projektu w Nawigatorze projektu. Wybierz nazwę obiektu docelowego z listy w lewej kolumnie edytora projektu. Kliknij Ogólne na górze edytora projektu. Ustaw Styl Paska Stanu - > Light

 1
Author: Usman Nisar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-05 09:27:28

Oto wytyczne/Instrukcja Apple o zmianie paska stanu.

Oto-jak zmienić styl paska stanu:

Jeśli chcesz ustawić styl paska stanu, poziom aplikacji Ustaw UIViewControllerBasedStatusBarAppearance na NO w swoim `.akta plista.

Jeśli chcesz ustawić styl paska stanu, na poziomie kontrolera widoku wykonaj następujące kroki:

  1. Ustaw UIViewControllerBasedStatusBarAppearance na YES w pliku .plist, Jeśli chcesz ustawić styl paska stanu tylko na poziomie UIViewController.
  2. W funkcji dodawania viewDidLoad- setNeedsStatusBarAppearanceUpdate

  3. Zastąp preferowany styl statusbarstyle w kontrolerze widoku.

-

override func viewDidLoad() {
    super.viewDidLoad()
    self.setNeedsStatusBarAppearanceUpdate()
}

override var preferredStatusBarStyle: UIStatusBarStyle {
    return .lightContent
}

Ustaw wartość .plist zgodnie z poziomem ustawienia stylu paska stanu. Tutaj wpisz opis obrazka


Kolor tła paska stanu można ustawić podczas uruchamiania aplikacji lub podczas pobierania kontrolera widoku.

extension UIApplication {

    var statusBarView: UIView? {
        return value(forKey: "statusBar") as? UIView
    }

}

// Set upon application launch, if you've application based status bar
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        UIApplication.shared.statusBarView?.backgroundColor = UIColor.red
        return true
    }
}


or 
// Set it from your view controller if you've view controller based statusbar
class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        UIApplication.shared.statusBarView?.backgroundColor = UIColor.red
    }

}



Oto wynik:

Tutaj wpisz opis obrazka

 0
Author: Krunal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-27 07:53:49