2011-06-28 14 views
10

Jestem bardzo nowy w CALayer. Miałem spojrzenie na dokumentacji, ale zupełnie nie rozumieją znaczenia tych właściwości, które mogą być wykorzystane do sterowania cieniuiphone - Jak kontrolować cień CALayera, dokładnie?

shadowOpacity

shadowRadius

shadowOffset

Szczególnie nie rozumiem promienia przesunięcia &.

Czy ktoś może mi dać jakieś światło, dla tego pytania o newbie?

Kolejne pytanie o cieniu jest

Jeśli rama UIView View1 jest CGRect (0, 0, 768, 40), czy mogę ubiegać się cień na nim, będzie cień może być pokryta przez innego UIView, który jest po prostu obok dolnej krawędzi widoku1?

dziękuję

Odpowiedz

15

Przesunięcie określa odległość rzutu cienia od widoku. Promień jest taki niewyraźny. Możesz ustawić przesunięcie, które wynosi zero CGSizeMake (0,0) i promień 5.0, a będziesz miał równy cień wokół swojego widoku.

Pamiętaj, aby zaimportować bibliotekę QuartzCore podczas próby pracy z CALayers.

Cień może być pokryty widokami znajdującymi się nad nim w widoku hejarchicznym.

+0

dzięki @Dancreek. co masz na myśli przez nawet cień? masz na myśli jak większy kwadrat cienia wokół mojego widoku? co jeśli używam CGSizeMark (0, 3)? Nie wiem, co oznacza x i y w shadowOffset. –

+0

Czy mógłbyś mi też powiedzieć, co powinienem ustawić w Offset, jeśli chcę, aby dolny brzeg mojego widoku miał cień? –

+2

x i y są kierunkami. Podobnie jak określanie punktów. Jeśli chcesz, aby cień szedł trochę w prawo, użyj wartości dodatniej x. ujemny dla lewej. dla down użyj dodatniej wartości y i ujemnej dla up. Więc przesunięcie o 0,3 dałoby cień rzucony prosto w dół. Nawet jeśli mam na myśli to, że byłby taki sam ze wszystkich stron z przesunięciem 0,0 i pewnym promieniem większym niż 0. – Dancreek