SORU
11 EYLÜL 2010, CUMARTESİ


Neden = EVET CALayer gölge engeller masksToBounds?

Aşağıdaki kod ile, bir gölge efekti benim UİView ekliyorum. Gayet iyi çalışır. Ama manzara kurar kurmazmasksToBoundsözellik içinEVET. Gölge efekti daha fazla işlenmiş değildir.

self.myView.layer.shadowColor = [[UIColor blackColor] CGColor];
self.myView.layer.shadowOpacity = 1.0;
self.myView.layer.shadowRadius = 10.0;
self.myView.layer.shadowOffset = CGSizeMake(0.0f, 0.0f);
self.myView.layer.cornerRadius = 5.0;
self.myView.layer.masksToBounds = YES; // <-- This is causing the Drop shadow to not be rendered
UIBezierPath *path = [UIBezierPath bezierPathWithCurvedShadowForRect:self.myView.bounds];
self.myView.layer.shadowPath = path.CGPath;
self.myView.layer.shouldRasterize = YES;

Bu konuda herhangi bir fikir var mı?

CEVAP
11 EYLÜL 2010, CUMARTESİ


Çünkü gölge efekti Görünümü dışında yapılır ve bu masksToBounds EVET set UİView kendisi dışında her şeyi çizmek için söyle.

Eğer gölge ile roundedCorner bir görünüm istiyorsanız 2 manzaralı ben bunu öneririm:

UIView *view1 = [[UIView alloc] init];
UIView *view2 = [[UIView alloc] init];

view1.layer.cornerRadius = 5.0;
view1.layer.masksToBounds = YES;
view2.layer.cornerRadius = 5.0;
view2.layer.shadowColor = [[UIColor blackColor] CGColor];
view2.layer.shadowOpacity = 1.0;
view2.layer.shadowRadius = 10.0;
view2.layer.shadowOffset = CGSizeMake(0.0f, 0.0f);
[view2 addSubview:view1];
[view1 release];

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BMG Rentals Property Management

    BMG Rentals

    23 Mayıs 2011
  • bored before i even began

    bored before

    30 Mart 2009
  • FusioNGamiing

    FusioNGamiin

    10 Temmuz 2007