Mam nieco przezroczysty widok (alfa = 0,6), który ma pewne subviews. Chciałbym, aby jeden z subskrybentów (UILabel) był narysowany z alfa 1.0, ponieważ mieszanie sprawia, że tekst jest trudny do odczytania, ale dodając go jako wyeksponowany widok główny, przyjęto jego wartość alfa. Czy istnieje sposób na obejście tego zachowania? Wierzę, że będę musiał usunąć to z subview, ale chciałem zapytać i zobaczyć, czy może czegoś brakuje.Czy możesz przesłonić wartość alfa nadrzędnego UIView na jednym z jego podstron?
6
A
Odpowiedz
2
Masz rację. Musisz przenieść UILabel z przezroczystego widoku, aby renderować go jako nieprzezroczysty.
10
Innym podejściem, które działało łatwo, jest nie modyfikowanie kanału alfa w UIView. Zamiast tego zmodyfikuj warstwę alfa w obiekcie backgroundColor obiektu UIView.
Oczywiście zależy to od tego, dlaczego warstwa alfa była przezroczysta, ale działała dobrze dla moich wymagań.
13
Brian ma rację. Na przykład:
view.backgroundColor = [UIColor colorWithWhite:0 alpha:0.6];
uczyni czarnym tle w alfa 0,6 i nie zostaną naruszone inne widoki.
+0
thanx, jego działanie. – ViruMax
Dziękujemy! Twoje rozwiązanie jest o wiele lepsze niż stworzenie kolejnego kontenera. –