2014-07-23 20 views
8

W katalogu zasobów można tworzyć foldery.Odwoływanie się do obrazu w folderze w katalogu zasobów

Wewnątrz folderów wszystkie nazwy obrazów muszą być niepowtarzalne.

Jeśli masz obraz o nazwie myImage, a spróbujesz nadać mu inny obraz myImage, zostanie on automatycznie zmieniony na myImage-1.

Ale jeśli masz dwa foldery, możesz mieć obrazy o tej samej nazwie w różnych folderach.

Musi więc istnieć sposób na odniesienie się do nich?

Czy ktoś wie, jak odwołać się do obrazu według folderu i nazwy obrazu w katalogu zasobów?

+1

Znalazłeś rozwiązanie? – nonamelive

+1

@ nieobowiązkowe nie, w końcu utworzyłem plik plist do przechowywania listy obrazów i załadowałem je stamtąd. Nie mogłem znaleźć odniesienia do rzeczywistego folderu. – Fogmeister

+1

@Fogmeister Próbuję zrobić to samo! Czy użyłeś skryptu do tworzenia plist? Jeśli tak, mógłbyś udostępnić? – Dionysis

Odpowiedz

9

Spędziłem mnóstwo czasu, ale w końcu to rozgryzłem. Answered here. Skopiowane poniżej.

Wybierz każdy folder w katalogu zasobów, dla którego chcesz dodać obszar nazw. Przejdź do atrybutów folderu i wybierz pod nazwą "Zapewnia przestrzeń nazw". Powinno to odpowiednio ustawić podkatalogi dla twojego katalogu aktywów finalnych.

Możesz to zrobić ręcznie, edytując Contents.json każdego folderu. Dodałeś następujące elementy z odpowiednim formatowaniem.

"properties" : { 
     "provides-namespace" : true 
} 
+0

Z [documentation] (https://developer.apple.com/library/ios/documentation/Xcode/Reference/xcode_ref-Asset_Catalog_Format/FolderStructure.html): "Pełna nazwa zawiera nazwę dowolnej grupy lub sprite atlas folderów które są oznaczone jako zapewniające przestrzeń nazw. Na przykład, jeśli ssaki folderów grupowych zawierały zestaw obrazów "Llama.imageset", pełna nazwa zestawu obrazów to "ssaki/Lamy". " –

+0

Wygląda obiecująco. Za późno na mój projekt, ale przetestuję go i dam znać. – Fogmeister

+0

na pewno. Jak wspomina inny komentator, wydaje się, że jest stosunkowo łatwym znaleziskiem. Ale zajęło mi trochę czasu, aby dowiedzieć się, jak to działa. Mam nadzieję, że wystarczająco dużo słów kluczowych tutaj, aby inni mogli to łatwo znaleźć. – Adam