Mam UIImageView i chciałem dodać na nim czarną nakładkę. Jaki jest najlepszy sposób robienia tego bez konieczności przesłonięcia drawRect? Zastanawiałem się nad dodaniem CALayera. Ale nie wiesz, jak uzyskać czarny CALayer z .3 alfa.Dodawanie czarnej nakładki z 0,3 opacity przez UIImageView
Odpowiedz
Coś takiego?
UIView *overlay = [[UIView alloc] initWithFrame:CGRectMake(0, 0, myImageView.frame.size.width, myImageView.frame.size.height/2)];
[overlay setBackgroundColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:0.3]];
[myImageView addSubview:overlay];
Czy zastanawiałeś się nad dodaniem UIView
z czarnym tłemColor i 0.3 alfa jako podzbiorem widoku obrazu?
ta jest podobna do odpowiedzi MDT za wyjątkiem stosowania właściwości CALayer:
UIView *blackOverlay = [[UIView alloc] initWithFrame: imageView.frame];
blackOverlay.layer.backgroundColor = [[UIColor blackColor] CGColor];
blackOverlay.layer.opacity = 0.3f;
[self.view addSubview: blackOverlay];
Uh oh, zrobiłeś boo boo. Kolor tła CALayera to CGColor, a nie UIColor ^^ ;. – borrrden
MDT odpowiedź jest poprawna. To jest po prostu inny sposób użycia CAGradientLayer
obok UIView
. Myślę, że zrobi to, co chcesz, dzięki większej liczbie opcji graficznych.
najpierw należy dodać
#import <QuartzCore/QuartzCore.h>
do ViewController.m
i każdym miejscu, które chcesz dodać tę nakładkę do UIImage
użytku:
CAGradientLayer *gradientLayer = [CAGradientLayer layer];
gradientLayer.frame = myImageView.layer.bounds;
gradientLayer.colors = [NSArray arrayWithObjects:
(id)[UIColor colorWithWhite:0.9f alpha:0.7f].CGColor,
(id)[UIColor colorWithWhite:0.0f alpha:0.3f].CGColor,
nil];
gradientLayer.locations = [NSArray arrayWithObjects:
[NSNumber numberWithFloat:0.0f],
[NSNumber numberWithFloat:0.5f],
nil];
//If you want to have a border for this layer also
gradientLayer.borderColor = [UIColor colorWithWhite:1.0f alpha:1.0f].CGColor;
gradientLayer.borderWidth = 1;
[myImageView.layer addSublayer:gradientLayer];
Mam nadzieję, że to pomoże Ci zrobić to
czy mógłbyś to rozwinąć? –
Dzięki Mick MacCallum
Swift 3 Wersja
let overlay: UIView = UIView(frame: CGRect(x: 0, y: 0, width: cell.imageView.frame.size.width, height: cell.imageView.frame.size.height))
overlay.backgroundColor = UIColor(red: 0/255, green: 0/255, blue: 0/255, alpha: 0.1)
cell.imageView.addSubview(overlay)
Użyłem do Swift 2,2
let overlay: UIView = UIView(frame: CGRectMake(0, 0, cell.imageView.frame.size.width, cell.imageView.frame.size.height))
overlay.backgroundColor = UIColor(red: 0/255, green: 0/255, blue: 0/255, alpha: 0.1)
cell.imageView.addSubview(overlay)
- 1. Dodawanie UILabel do UIImageView
- 2. Problem nakładki z Bootstrapem
- 3. Dodawanie nakładki do MapView w osmdroidie
- 4. Dodawanie efektywności Skrypt do mojej czarnej listy-białej listy IP
- 5. CSS - Tinted Opacity
- 6. Apple Interface Builder: dodawanie podglądu do UIImageView
- 7. jQuery CSS Opacity
- 8. zapętlanie przez uiimageview w customCell
- 9. Nakładki na nakładki Qt
- 10. Kiedy obrócić UIImageView z właściwości transform, z pixellate krawędzie
- 11. Tworzenie nakładki siatki na obrazie
- 12. Problem nakładki ikon z Pythonem
- 13. Nakładanie tekstu Obraz z zaciemnionym opacity React Native
- 14. CABasicAnimation nie działa z UIImageView
- 15. UIImageView + AFNetworking setImageWithURL z animacją
- 16. Działająca kolejność Z dla UIImageView
- 17. Dotknij opcji UIImageView?
- 18. nakładki 3 powiększ powiększenie
- 19. Android jest na czarnej liście naszej lokalizacji
- 20. Znalezienie nakładki w zakresach z R
- 21. Dodawanie odcienia do obrazu
- 22. Jak uzyskać nakładki ikon z git-extensions
- 23. Wskazówki dotyczące nakładki nakładkowej z jQuery
- 24. X11: Rysuj nakładkę/Usuń rysunki z nakładki
- 25. rejestracji obrazu z kamery animowane UIView nakładki
- 26. Rozmiar nakładki ffmpeg
- 27. nakładki działki skrzypcowe ggplot2
- 28. Wyświetlenie lokalnego obrazu w UIImageView
- 29. jak przyciemnić UIImageView
- 30. Skalowanie/interpolacja UIImageView
Nie sądzę, ci mają dodać subviews do UIImageView. –
@ HermanJ.RadtkeIII dlaczego tak mówisz? –
To [komentarz] (http://stackoverflow.com/questions/4892770/why-cant-you-add-a-subview-to-a-uiimageview-to-is-view-outlet-of-a- uiview # comment21186181_4892770) mówi najlepiej. –