0

CAShapeLayer を使用してマスクを作成し、左上/右上に丸い角を付けてから、 に適用しましnavigationControllernavigationBar

それは魅力のように機能しますが、ナビゲーション バーのボタンを使用できないことに気付きました!

これが私が使用するコードです(でviewDidLoad):

UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:self.navigationController.navigationBar.bounds
                                               byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight
                                                     cornerRadii:CGSizeMake(6.0, 6.0)];

CAShapeLayer *maskLayer = [CAShapeLayer layer];
maskLayer.frame = self.navigationController.navigationBar.bounds;
maskLayer.path = maskPath.CGPath;

self.navigationController.navigationBar.layer.mask = maskLayer;
4

1 に答える 1

0

レイヤーマスクを設定した後、プログラムでボタンを設定する必要があります。

于 2012-03-02T16:52:05.777 に答える