iOS 9 Xcode 7 - aplikacja pojawia się z czarnymi paskami na górze i na dole

116

Zainstalowałem aplikację na iPhonie 6 iOS9 i oto co się stało. Zwróć uwagę na czarne paski na górze i na dole. Działa dobrze na iOS8. Jak mogę to naprawić?

Próbowałem budować za pomocą Xcode 6.4 i 7. Ten sam wynik.

(iPhone 5 uruchamiał takie aplikacje na iPhone'a 4)

wprowadź opis obrazu tutaj

Mojtaba
źródło
Mam ten sam problem na iPhonie 6 zaraz po uaktualnieniu do iOS 9
aledalgrande
Czy w swojej aplikacji używasz nawigacji lub kontrolera z paskiem kart?
Ing. Ron
@RonWood Obie faktycznie.
Mojtaba,
Wypróbuj rozwiązanie tutaj: stackoverflow.com/questions/32312906/ ...
aledalgrande

Odpowiedzi:

187

Czy migrowałeś swoją aplikację z wcześniejszej wersji Xcode? Jeśli tak, to Xcode przyjmuje teraz założenie dotyczące rozmiaru ekranu i potrzebujesz sposobu wskazania rzeczywistego rozmiaru ekranu w czasie wykonywania.

Istnieją dwa sposoby:

a) Jeśli używasz ekranu startowego.

Brakuje pliku LaunchScreen.storyboard. Utwórz plik LaunchScreen.storyboard i dodaj go do swojego projektu.

b) Jeśli nie używasz ekranu startowego.

Przejdź do ustawień celu i wybierz Ogólne, a następnie Ikony aplikacji i Uruchom obrazy. Teraz ustaw „Launch Screen File” na „main.storyboard” (lub inny scenorys, jeśli to konieczne)

Gruntcakes
źródło
1
Jaka powinna być zawartość LaunchScreen.storyboard?
Pojawia
4
Nie potrzebujesz pliku LaunchScreen. Inną opcją jest dostarczenie potrzebnych obrazów uruchamiania dla każdego obsługiwanego rozmiaru ekranu.
rmaddy
Mam ten sam problem podczas otwierania aplikacji w iOS 9.1, ale mój problem został rozwiązany przez dodanie obrazów ekranu uruchamiania dla całej rozdzielczości, dzięki @rmaddy
g212gs
4
W moim przypadku muszę zmienić „Launch Screen File” na MainStoryBoard, jeśli nie masz Launch.screen.storyboard, aby działał
Evan Lin
b działała poprawnie dla mnie! Doprowadzało mnie to do szału, wielkie dzięki!
frisinacho
29

Moja aplikacja nie używa obrazu startowego. Ustawienie „Launch Screen File” na mój plik „main.storyboard” rozwiązało problem.

To ustawienie można znaleźć w „Target-> General-> App Icons and Launch Images”

Aby uzyskać więcej informacji, użyj następującego łącza: http://oleb.net/blog/2014/08/replacing-launch-images-with-storyboards/

dreamer.psp
źródło
2
To zadziałało dla mnie i wydaje się znacznie lepszym rozwiązaniem niż dodanie losowego nowego scenariusza do twojego projektu.
Jeremy,
1
Jeśli projekt to Parse IOS swift starter project, przejdź do Target-> General-> App Icons and Launch Images, a lista rozwijana „Launch Screen File” jest pusta. Zatem wybranie „Main.storyboard” rozwiązuje problem „czarnych pasków na górze i na dole”.
sfbayman
To rozwiązanie nie zadziała, jeśli musisz zapewnić niestandardowy widok dla obrazu uruchamiania lub obraz uruchamiania różni się od kontrolera widoku początkowego scenorysu.
Himanshu Mahajan
17

Dla mnie problem polega na tym, że migruję moją aplikację z wcześniejszej wersji Xcode i brakuje w projekcie pliku LaunchScreen.storyboard. Właśnie utworzyłem LaunchScreen.storyboard i dodałem go, aby uruchomić plik ekranu. To załatwiło sprawę. Aplikacja z czarnymi paskami na górze i na dole

smapps
źródło
6

Używam Xcode 7.2. Na początku utworzyłem plik LaunchScreen.storyboard, zgodnie z sugestią nadmanganianu potasu i zadziałało! Jednak nie chciałem ekranu startowego, więc spróbowałem ustawić Main.storyboard jako plik ekranu uruchamiania i to załatwiło sprawę!

xcode 7.2

Max Hiroyuki Ueda
źródło
2

Podczas migracji aplikacji z wcześniejszej wersji xCode do xCode 6 lub xCode 7 napotkasz ten problem.

W przypadku iOS 7 i wcześniejszych programiści muszą dostarczyć oddzielne obrazy uruchamiania dla wszystkich rozmiarów ekranu, rozdzielczości i orientacji obsługiwanych przez ich aplikację.

W Xcode 6 lub nowszym jest inna opcja. Możesz określić scenorys, którego początkowy kontroler widoku zostanie następnie użyty jako ekran uruchamiania aplikacji. Wykonaj poniższe kroki:

  • Utwórz pusty plik scenorysu o nazwie LaunchScreen.storyboard.

  • Przejdź do ustawień docelowych i na karcie „Ogólne” wybierz scenorys jako plik ekranu uruchamiania w sekcji „Ikony aplikacji i obrazy uruchamiania”. Xcode doda odpowiedni klucz UILaunchStoryboardName do Info.plist Twojej aplikacji. Gdy ten klucz jest obecny, Xcode nada mu priorytet w stosunku do wszelkich ustawionych obrazów uruchamiania.

  • Dodaj podglądy do nowo utworzonego widoku scenorysu i umieść je z ograniczeniami. Po uruchomieniu aplikacji na urządzeniu system operacyjny powinien używać sceny jako ekranu uruchamiania.

Usuń starszą aplikację z symulatora i wyczyść projekt.

Twoje zdrowie :-)

Himanshu Mahajan
źródło
2

Mam ten sam problem w mojej aplikacji. W mojej aplikacji do projektu dodano wiele celów. Jeśli używam narzędzia do uruchamiania scenorysów, widzę pełny ekran, ale w moim przypadku obraz z lunchu jest rozmyty i rozciągnięty na iPhonie 4. Aby wyjść z tego problemu, użyłem rozwiązań zasobów LaunchImage. Po tym nadal mam ten sam problem. Wypróbowałem wszystkie powyższe rozwiązania, w końcu stwierdziłem, że moje obrazy png nie zawierają rozdzielczości ALFA . Po dodaniu nowych zdjęć widzę obrazy na pełnym ekranie.

VDPATEL
źródło
2

Ten jest, jeśli w ogóle nie używasz scenorysu.

Występuje po wyjęciu LaunchScreenz Launch Screen Filew App icons and Launch Images. wprowadź opis obrazu tutaj

Zamiast usuwać go stąd, przejdź do info.plist i znajdź Launch screen interface file base namei usuń LaunchScreen, tj. Pozostaw to pole puste. wprowadź opis obrazu tutaj

Nie pojawi się w info.plist, jeśli usunąłeś LaunchScreenjuż z Launch Screen File. Następnie możesz podać dowolną nazwę, Launch Screen Filea pojawi się ona i możesz ją usunąć.

Alok Subedi
źródło
1

Przejdź do katalogu zasobów i utwórz nowy obraz uruchomienia systemu iOS. następnie w Cel> Ogólne> Ikony aplikacji i uruchom obrazy> Uruchom źródło obrazu zobaczysz automatycznie nowy Uruchom obraz utworzony w katalogu zasobów.

Mohcine Belarrem
źródło
1

W moim przypadku mam kilka celów w projekcie, a każdy z nich ma własne obrazy ekranu uruchamiania. Dziwne, że jeden z celów wygląda dobrze, ale inne mają te czarne paski. Rzecz była w nazwie folderu Uruchom w zasobach. Zmień nazwę na LaunchImage rozwiązuje problem.

d.rozumeenko
źródło
1

Swift 4.2

wybierz LaunchScreen.storyboard, jeśli jest pusty

wprowadź opis obrazu tutaj

Shakeel Ahmed
źródło
0

W moim przypadku mam jeden zasób z obrazami startowymi, ale wyświetlał on również górny i dolny ciemny pasek.

Wypróbowałem uruchomienie rozwiązania scenorysu i tak, to działa, ale nie chciałem dodawać nowego pliku, więc oto, co zrobiłem, aby rozwiązać problem:

  1. Skopiowałem obrazy startowe do innego folderu
  2. Usunięto istniejący zasób LaunchImage
  3. Dodano nowy zasób LaunchImage
  4. Dodano obrazy do nowego LaunchImage

Otóż ​​to!

Wils
źródło
0

Przejdź do ustawień docelowych w xcode w tej sekcji przejdź do ikony aplikacji i uruchom sekcję obrazów w tej sekcji wybierz plik ekranu uruchamiania znajdziesz listę rozwijaną wartości wybierz wartość CDVLaunchScreeen z wartością pliku ekranu uruchamiania

Shankar Prasad
źródło
0

Miałem podobny problem z iPodem. Aby to naprawić, wymieniłem

<key>UILaunchStoryboardName~ipad</key>
<string>LaunchScreenIpad</string>
<key>UILaunchStoryboardName~iphone</key>
<string>LaunchScreenIphone</string>

z

<key>UILaunchStoryboardName~ipad</key>
<string>LaunchScreenIpad</string>
<key>UILaunchStoryboardName~iphone</key>
<string>LaunchScreenIphone</string>
<key>UILaunchStoryboardName~ipod</key>
<string>LaunchScreenIphone</string>

w Info.plist.

Roman Podymov
źródło
-1

Nie rób niczego, co opisano we wcześniejszych odpowiedziach ...

Aby wyświetlić widok kontrolera, wykonaj następujący pojedynczy krok

Step 1 : Add the splash Screen for iPhone and iPad.

Po tym błędzie ten błąd już się nie powtórzy.

Shubham JAin
źródło