Xcode6
usunął Empty Application
szablon podczas tworzenia nowego projektu. Jak możemy stworzyć pustą aplikację (bez Storyboard) w Xcode6
i powyżej, tak jak we wcześniejszych wersjach?
ios
xcode
storyboard
xcode6
Akhil KC
źródło
źródło
Odpowiedzi:
W
XCode6
wersjach i nowszych nie ma opcji bezpośredniego tworzenia pustej aplikacji, jak wXCode5
i wcześniejszych. Ale nadal możemy stworzyć aplikację bez,Storyboard
wykonując następujące kroki:Single View Application
.Main.storyboard
iLaunchScreen.xib
(zaznacz je, kliknij prawym przyciskiem myszy i wybierz, czy chcesz je usunąć z projektu, czy całkowicie).Info.plist
pliku.Swift 3 i nowsze:
Swift 2.x:
Cel C:
źródło
LaunchScreen.xib
i odpowiedniInfo.plist
wpis. Bez tego aplikacja nie zajmie całego rozmiaru ekranu na większych iPhone'ach, co jest brzydkie.Podejście proste byłoby skopiować
XCode 5
„sEmpty Application
szablon doXCode
” s szablony katalog.Można pobrać
XCode 5
„sEmpty Application
szablon z tutaj , a następnie rozpakuj go i skopiować do/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/Project Templates/iOS/Application
katalogu.PS to podejście działa również szybko!
Edytuj
Zgodnie z sugestią @harrisg w komentarzu poniżej, możesz umieścić wyżej wymieniony szablon w
~/Library/Developer/Xcode/Templates/Project Templates/iOS/Application/
folderze, aby był dostępny nawet po zaktualizowaniu Xcode.A jeśli nie ma takiego katalogu, może być konieczne utworzenie takiej struktury katalogów:
Templates/Project Templates/iOS/Application/
w~/Library/Developer/Xcode/
Korzystając z tego prostego podejścia, jestem w stanie stworzyć
Empty Application
wXCode 6
. (Zrzut ekranu załączony poniżej)Mam nadzieję że to pomoże!
źródło
Musisz wykonać jeszcze kilka czynności:
Oto pełny samouczek:
dodaj plik „[nazwa aplikacji] -Prefix.pch” do plików pomocniczych z zawartością:
dodaj „$ SRCROOT / $ PROJECT_NAME / [nazwa pliku pch]” do ustawień projektu -> Ustawienia kompilacji -> Apple LLVM 6.0 - Język -> „Nagłówek prefiksu”
application:didFinishLaunchingWithOptions:
metoda realizacji :źródło
Odpowiedź Achils jest całkowicie poprawna. Dla tych z nas, którzy używają Swift, wyglądałoby to tak:
źródło
Xcode 9.3.1 i Swift 4
Następnie przejdź do AppDelegate.swift iw funkcji didFinishLaunchingWithOptions napisz następną:
Xcode 11.2.1 i Swift 5
Następnie przejdź do SceneDelegate iw funkcji scena napisz następną:
źródło
Jest jeszcze jeden krok, który musisz zrobić:
1) Usuń nazwę bazową pliku głównego storyboardu w pliku plist
źródło
Aktualizacja: Swift 5 i iOS 13:
SceneDelegate.swift
i zmieńfunc scene
z:do
źródło
Mam oryginalny szablon pustej aplikacji, który był używany w wersjach Xcode wcześniejszych niż Xcode 6. Wrzuciłem go tutaj .
Możesz go pobrać i wkleić ręcznie do katalogu szablonów Xcode lub zainstalować za pomocą menedżera pakietów dla Xcode, Alcatraz . Po prostu wyszukaj Xcode Empty Application .
źródło
Usuń plik Main.storyboard
Można to po prostu usunąć.
Zaktualizuj plik ProjectName-Info.plist
Wyjmij
Main storyboard base file name
klucz.Utwórz plik nib i połącz się z kontrolerem widoku projektu
1. Utwórz plik NIB (Plik -> Nowy -> Plik -> Widok)
2. Zaktualizuj
File's Owner's
klasę do dowolnego wywoływanego kontrolera widoku projektu3. Połącz
File's Owner's
view
wylot zview
obiektem w pliku nibZaktualizuj delegata aplikacji
1. Importuj plik nagłówkowy kontrolera widoku projektu
2. Zaktualizuj
:didFinishLaunchingWithOptions:
metodę aplikacji :źródło
Dla
Xcode 8
iSwift 3
. Po prostu usuń.storyboard
plik, automatycznie usunie on odpowiednie odniesienie z twojego.plist
iAppDelegate.swift
dodasz następujący kod.Możesz napisać własny niestandardowy ViewCountroller i używać go
AppDelegate.swift
jako swojegoself.window?.rootViewController
, po prostu zastąp UIViewController własnym ViewController w powyższym kodzie.źródło
Używam XCode6 Beta i szukałem innego rozwiązania tego problemu, dodając pusty szablon z XCode5.xx do XCode6 Beta.
W tym celu kliknij prawym przyciskiem myszy XCode5.xx w aplikacjach, kliknij „Pokaż zawartość pakietu” i skopiuj „Empty Application.xctemplate” z podanej ścieżki
Zawartość / Programista / Platformy / iPhoneOS.platform / Developer / Library / Xcode / Templates / Project Templates / Application
Teraz zamknij okno i otwórz podaną ścieżkę dla XCode6
Spis treści / Programista / Platformy / iPhoneOS.platform / Developer / Library / Xcode / Templates / Project Templates / iOS / Application /
Wklej plik „Empty Application.xctemplate” do folderu aplikacji. Teraz zrestartuj XCode6, wychodząc i tworząc nowy projekt. Otrzymasz opcję „Pusta aplikacja”.
Teraz, gdy tworzę nowy pusty projekt, automatycznie dodawany jest plik .pch w projekcie (który musimy dodać ręcznie w XCode6)
Mam nadzieję, że to zadziała
źródło
Tak, lub po prostu użyj jednej z poprzednich wersji beta, aby ją utworzyć, a potem kontynuuj na najnowszej wersji.
źródło
Możesz stworzyć własny szablon projektu dla Xcode. Na żądanie możesz użyć szablonu na tej stronie:
https://github.com/elprup/xcode7-project-template
źródło
Inni już wyjaśnili, jak pozbyć się storyboardu, więc pominę tutaj. W ten sposób wolę robić to w moim kodzie z mniejszą liczbą opcjonalnych łańcuchów (napisane w Swift 3.1):
źródło
aktualizacja na Xcode 11 i iOS 13. Po ustawieniu wszystkiego, ale nadal widzisz czarny ekran, dzieje się tak, ponieważ cykl życia jest obsługiwany przez UISceneDelegate i kiedy tworzysz nowy projekt, automatycznie generuje UISceneDelegate.m i UISceneDelegate.h. Aby wrócić do dawnych czasów, zanim przyzwyczailiśmy się do UISceneDelegate. następujące kroki mogą pomóc:
usuń plik Manifest sceny aplikacji w plist.
usuń Application Scene Manifest.h i Application Scene Manifest.m
usuń kod pod znakiem #pragma - cykl życia UISceneSession w APPdelegate.m
add @property (silne, nieatomowe) okno UIWindow *; w APPdelegate.h
źródło