Xcode 6.3 ulega awarii podczas przechodzenia z serii ujęć do innego pliku Swift 1.2

80

Zainstalowałem Xcode 6.3, który obejmuje obsługę języka Swift 1.2. Pojawiło się mnóstwo komunikatów o błędach, które dotyczą głównie problemów z przesyłaniem.

Przeszedłem do scenorysu i nie mogę wrócić do żadnego innego .swiftbez awarii całej sprawy. Wymusiłem zamknięcie, ponowne uruchomienie, a nawet ponowne zainstalowanie i nadal nie mogę opuścić Main.storyboardpliku.

Wypróbowałem sugestię opisaną tutaj, aby otworzyć scenorys jako kod, wprowadzić pewne zmiany, cofnąć te zmiany, zapisać i spróbować ponownie, ale nadal bez powodzenia.

Czy coś w moim kodzie psuje Xcode? Czy ktoś jeszcze tego doświadcza? Z powodzeniem korzystałem z Xcode 6.3 beta z tym samym kodem.

Aktualizacja: zostało to naprawione w Xcode 6.3.1 wydanym 21 kwietnia 2015.

złóg
źródło
1
Te same awarie tutaj ...
Dániel Nagy
3
HoaParis nadal się zawiesza po konwersji. Mam na myśli, że utknąłem na storyboardzie. Nie mogę nawet zamknąć bieżącego projektu, aby otworzyć inny projekt.
kamień
2
To nie tylko szybka sprawa ... Objective-C także
Omid Hashemi
2
Radar przesłany: openradar.me/20498652
Anthony Mattox
3
Nie tylko ze Storyboard do Swift, powoduje również awarię Storyboard do pliku Obj-C.
daidai

Odpowiedzi:

67

Z forów programistów Apple dowiaduję się, że jest to problem @IBDesignable . Zwłaszcza w projektach, które używają niestandardowych czcionek, dodatkowych xibs itp.

W jakiś sposób rozwiązałem mój problem, usuwając wszystkie @IBDesignable z szybkich definicji klas UIView. Możesz otworzyć katalog swojego projektu za pomocą TextMate lub innego, wyszukać i usunąć wszystkie „@IBDesignable”

Jednak nadal uważam, że jest to POWAŻNY błąd, nad którym należy popracować ... więc przesyłaj dalej raporty o błędach do Apple.

złóg
źródło
Udało mi się przekonwertować wszystkie moje projekty Z WYJĄTKIEM tego, w którym używam IBDesignable, więc jestem prawie pewien, że @livingstonef jest na czymś
Unome
może również potwierdzić. usunięcie @IBDesignable sprawia, że ​​xcode działa. Dzięki!
alexdd55
Czy jest do tego radar?
SushiGrass Jacob
21

Tymczasowe rozwiązanie :

Otwierając „Nowe okno” (ten sam projekt).

Jeden dla kodu, jeden dla scenorysu lub najpierw zmniejsz, pracuj swobodnie z drugim oknem.

Możesz zatrzymać swój @IBDesignables


EDYCJA: Naprawiono błąd -> Zaktualizuj Xcode 6.3.1

Dimitri
źródło
1
Pracuję ... Możesz ukryć swojego Nawigatora, Cmd+0aby nie ulec pokusie zmiany plików w dodatkowym oknie.
Bartłomiej Semańczyk 10.04.15
1
inne rozwiązanie zmień nazwę pliku storyboardu w Finderze, przełącz się na potrzebną klasę i bądź szczęśliwy !!! ))))) Lubię aktualizacje Apple, gdzie jest Stive? Pomóż nam
Matrosov Alexander
15

Uruchomienie Xcode podczas przytrzymania shiftnaprawiło to dla mnie.

(To pomija przywracanie stanu Xcode).


Aktualizacja: Xcode 6.3.1, wydana dzisiaj, rozwiązuje ten problem.

Aaron Brager
źródło
1
To fantastyczna pomoc. Ciągle byłem uwięziony, gdy stare okna były przywracane, możliwość ominięcia tego jest cudowna. Dziękuję +1
Unome
4

Aktualizacja Xcode 6.3.1

U mnie wszystko działa!

Dimitri
źródło
0

Rozwiązanie tymczasowe:

Jeśli otworzyłeś Asystenta Edytora, przejdź do innego pliku, używając alt+click. Możesz zatrzymać swój @IBDesignables.

Bartłomiej Semańczyk
źródło
0

Oto jak obejść ten dziwny błąd:

  1. Przed uruchomieniem Xcode zmień nazwę pliku storyboardu w Finderze, aby Xcode go nie znalazł (np. Dodaj rozszerzenie .temp)
  2. Uruchom Xcode - działa dobrze, nawet jeśli został zawieszony wcześniej, ponieważ nie może wyświetlić edytora scenorysów
  3. Otwórz nowe okno w Xcode
  4. Zmień nazwę pliku scenorysu na jego oryginalną nazwę
  5. W nowym oknie w Xcode - wybierz scenorys - Xcode nie zawiesza się
  6. Zminimalizuj nowe okno i pracuj jak zwykle w oryginalnym oknie. Teraz już można wybrać dowolny plik - nawet storyboard - bez Xcode powieszenie

Pozostaje jednak jeden problem, przynajmniej dla mnie. Za każdym razem, gdy wybieram plik lub coś edytuję, Xcode musi ponownie skompilować scenorys. Jeszcze tego nie rozwiązałem.

Anders Forssell
źródło
0

Mogę potwierdzić ten błąd. Utknąłem w storyboardzie i nie mogłem nic zrobić, aby się z niego wydostać (nie mogłem nawet otworzyć asystenta). Aby obejść ten problem, przy otwartym scenorysie kliknij .storyboardplik prawym przyciskiem myszy i wybierz opcję Open As- Source Code. Spowoduje to przełączenie scenorysu na kod i będziesz mógł przejść do dowolnego pliku.

Andrei Filip
źródło
To tylko tymczasowa poprawka, gdy tylko ponownie wyświetlisz scenorys, wrócisz do tego samego problemu
amir
Tak to jest. Po prostu musiałem znaleźć sposób na wyjście z storyboardu w pierwszej kolejności i jak dotąd była to jedyna rzecz, która działała bez usuwania wszystkich moich IB_DESIGNABLES
Andrei Filip
możesz dwukrotnie kliknąć inny plik i pozostawić otwartą scenorys również w tle.
amir
To pomoże ci się go pozbyć. Nie chcę, aby scenorys był otwarty w tle, ponieważ jest dość złożony i pochłania zasoby, aby był otwarty. To tylko tymczasowe rozwiązanie, dzięki któremu nie musisz zmieniać IB_DESIGNABLES i nadal możesz korzystać z Xcode :)
Andrei Filip
0

To już nie jest błąd, odkąd Apple go naprawił Xcode 6.3.1.

Bartłomiej Semańczyk
źródło