アプリでは UINavigationBar をサブクラス化し、TitleView として (View Controller で) カスタム UIView を設定しています
[self.playButton setBackgroundColor:[UIColor yellowColor]];
[self.navigationItem setTitleView:self.playButton];
このビュー (playButton) の下端は湾曲している必要があります。コーナーだけでなく、下端全体をボットします。この効果を実現するために、次のコードを使用しています。
CAShapeLayer *maskLayer = [CAShapeLayer layer];
UIBezierPath *path = [[UIBezierPath alloc] init];
[path addCurveToPoint:CGPointMake(self.playButton.frame.size.width, self.playButton.frame.size.height) controlPoint1:CGPointMake(0, self.playButton.frame.size.height) controlPoint2:CGPointMake(self.playButton.frame.size.width, 60)];
maskLayer.path = path.CGPath;
self.playButton.layer.mask = maskLayer;
しかし、そのコードの後、私の UIView (playButton) が消えました! UIViewの湾曲した下端を適用するこの適切な方法はありますか?
次のようになります: http://i.imgur.com/51UIQsE.png