Udostępnij za pośrednictwem


Błąd narzędzia IBTool: nie można ukończyć operacji.

Naprawiono w programie Xcode 6.1.1

Firma Apple usunęłaibtool usterkę w programie Xcode 6.1.1, więc uaktualnienie do programu Xcode 6.1.1 lub nowszego jest najprostszą poprawką.


Opis problemu

Polecenie ibtool w środowisku Xcode 6.0 miało usterkę w systemie OS X 10.10 Yosemite. Platforma Xamarin.iOS używa narzędzi Xcode ibtool do kompilowania scenorysów i XIB plików.

Więcej informacji na temat usterki w programie Xcode można znaleźć w następującym wpisie Stack Overflow: https://stackoverflow.com/questions/25754763/cant-open-storyboard

Komunikat o błędzie

Nie można otworzyć dokumentu "MainStoryboard.storyboard". nie można ukończyć operacji. (błąd com.apple.InterfaceBuilder -1).)

Obejścia (dla środowiska Xcode 6.0)

Opcja 1. Zarządzanie wszystkimi UIImageView.Image właściwościami w kodzie

Zamiast ustawiać Image właściwość UIImageView obiektu w scenorysie lub .xib pliku, można ustawić właściwość w jednej z metod przesłonięcia cyklu życia widoku na kontrolerze widoku (na przykład w ViewDidLoad()pliku ). Zobacz też Artykuł Praca z obrazami, aby uzyskać porady dotyczące używania funkcji UIImage.FromBundle() vs. UIImage.FromFile()

Opcja 2. Przeniesienie wszystkich zasobów obrazu do folderu najwyższego poziomu Resources

Po przeniesieniu obrazów do folderu najwyższego poziomu Resources należy zaktualizować scenorys i .xib pliki, aby używać nowych ścieżek obrazów.

Opcja 3. Ustaw dla LogicalName wszelkich problematycznych zasobów obrazów, aby były kopiowane do najwyższego.app poziomu pakietu

Załóżmy na przykład, że oryginalny .csproj plik zawiera następujący wpis:

<BundleResource Include="Resources\Images\image.png" />

Możesz zmienić ten element i dodać element LogicalName , aby zamiast tego obraz został skopiowany do najwyższego .app poziomu pakietu:

<BundleResource Include="Resources\Images\image.png">
    <LogicalName>image.png</LogicalName>
</BundleResource>

W Visual Studio dla komputerów Mac LogicalName można również ustawić pole dla Resource ID obrazu w obszarze > Właściwości okienk widoków>. (Zobacz również: https://stackoverflow.com/questions/16938250/xamarin-studio-folder-structure-issue-in-ios-project/16951545#16951545)

Po tej zmianie należy zaktualizować scenorys i .xib pliki, aby używać nowych ścieżek obrazów najwyższego poziomu. W programie Visual Studio i Visual Studio dla komputerów Mac należy ręcznie edytować ścieżkę dla Image właściwości.

Następne kroki

Aby uzyskać dalszą pomoc, skontaktować się z nami lub jeśli ten problem pozostanie jeszcze po wykorzystaniu powyższych informacji, zobacz Jakie opcje pomocy technicznej są dostępne dla platformy Xamarin? aby uzyskać informacje na temat opcji kontaktu, sugestii, a także sposobu tworzenia nowej usterki w razie potrzeby.