2016-12-26 14 views
7

Podążałem za tutorialem Swift App stworzonym przez Apple here. W szczególności próbuję skonfigurować kilka niestandardowych przycisków, aby utworzyć kontrolę oceny. Przyciski mają przypisane trzy obrazy: emptyStar, fillStar i highlightedStar, które będą używane w różnych stanach przycisku.Oczekiwany błąd wzoru w Swift?

użyć kodu dokładnie przewidziane przez Apple, ale nie wiem, dlaczego zostały uzyskiwanie ten błąd czasu kompilacji tajemnicze Expected pattern jak pokazano na zrzucie ekranu: Expected pattern errors Image Assets

Co robię źle tutaj?

+2

że ' imageName' jest właściwie skrótem dla' #imageLiteral (resourceName:) ', czyli kompilacji' UIImage (o nazwie:) '. – user28434

Odpowiedz

10

Głupie mnie, a Xcode, to funkcja automatycznego uzupełniania kodu, która wprowadza mnie w błąd.

Małe ikony w kodzie pokazanym na pierwszym zrzucie ekranu nie są pięknymi wizualnymi dekoracjami, które pasują do moich nazw zmiennych (chociaż chciałbym, aby te inteligentne "emotikony" dekorowały mój kod). Wskazują, że to, co deklaruję po let, nie jest zmienną, ale samym obrazem.

Należy zachować ostrożność, nie akceptując automatycznego uzupełniania podczas pisania i trzymania zwykłego tekstu podczas deklarowania stałej. Po takiej deklaracji zobaczysz, że są dwa różne, na przykład emptyStar o tej samej nazwie - jeden obraz, a drugi stała.

Two empty stars

Oto ostateczny kod, ledwo zauważalne zmiany wizualne!

Final working code