我想讓我的導航欄一帶有圓角(前左和右)目標C - UINavigationBar的圓角
我發現這個代碼,使之成爲現實:
CALayer *capa = [self.navigationController navigationBar].layer;
[capa setShadowColor: [[UIColor blackColor] CGColor]];
[capa setShadowOpacity:0.85f];
[capa setShadowOffset: CGSizeMake(0.0f, 1.5f)];
[capa setShadowRadius:2.0f];
[capa setShouldRasterize:YES];
//Round
CGRect bounds = capa.bounds;
bounds.size.height += 10.0f; //I'm reserving enough room for the shadow
UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:bounds
byRoundingCorners:(UIRectCornerTopLeft | UIRectCornerTopRight)
cornerRadii:CGSizeMake(10.0, 10.0)];
CAShapeLayer *maskLayer = [CAShapeLayer layer];
maskLayer.frame = bounds;
maskLayer.path = maskPath.CGPath;
[capa addSublayer:maskLayer];
capa.mask = maskLayer;
但它有一個問題,現在觸摸板沒有邊角,它在各個角落都是透明的,我可以看到背後的視圖。
我不希望它是透明的我想在那裏放一些黑色。
任何人都知道如何做到這一點?
到底爲什麼你有OpenGL作爲標籤? – 2012-04-20 16:36:43