そのために、透明な円の 1/4 (半径はウィンドウの新しい半径になります) と角に向かって黒い小さな png ファイルを使用しました (デザイナーが画像を提供してくれました。それを行う必要がある場合があります)。あなた自身)。imageView
この png を使用して4 つの を作成し、それに応じて回転させ、サブビューとして に追加しましたnavigationController
。
次のメソッドをあなたに入れ、appDelegate
内部で呼び出しますapplication:didFinishLaunchingWithOptions
:メソッドを初期化した後navigationController
。
-(void) insertCornerRadiiOnNavigationController : (UINavigationController *) navController{
CGFloat cornerRadius = 7;
UIImageView *corner1 = [[UIImageView alloc] initWithFrame:CGRectMake(0, 20, cornerRadius, cornerRadius)];
UIImageView *corner2 = [[UIImageView alloc] initWithFrame:CGRectMake([_window bounds].size.width - cornerRadius, 20, cornerRadius, cornerRadius)];
UIImageView *corner3 = [[UIImageView alloc] initWithFrame:CGRectMake(0, [_window bounds].size.height - cornerRadius, cornerRadius, cornerRadius)];
UIImageView *corner4 = [[UIImageView alloc] initWithFrame:CGRectMake([_window bounds].size.width - cornerRadius, [_window bounds].size.height - cornerRadius, cornerRadius, cornerRadius)];
corner2.transform = CGAffineTransformMakeRotation (M_PI_2);
corner3.transform = CGAffineTransformMakeRotation (3 * M_PI_2);
corner4.transform = CGAffineTransformMakeRotation (M_PI);
[corner1 setImage:[UIImage imageNamed:@"corner.png"]];
[corner2 setImage:[UIImage imageNamed:@"corner.png"]];
[corner3 setImage:[UIImage imageNamed:@"corner.png"]];
[corner4 setImage:[UIImage imageNamed:@"corner.png"]];
[navController.navigationBar addSubview:corner1];
[navController.navigationBar addSubview:corner2];
[navController.view addSubview:corner3];
[navController.view addSubview:corner4];
[corner1 release];
[corner2 release];
[corner3 release];
[corner4 release];
}
何らかの理由でそれらをUIWindow
直接追加できなかったため、imageViews
表示されませんでした。