iOS 6 でaUIPopoverController
を表示するためにa を使用しています。UITableViewController
カバーされたビューを表示できるようにするために、このポップオーバーを半透明にしようとしています。それ以外に、デフォルトの矢印などを備えた標準のポップオーバー コントローラーが必要です。
iOS 5 以降、UIPopoverBackgroundViewを使用してカスタム ポップオーバー バックグラウンド ビューを定義できます。ただし、背景を正しく設定するのに苦労しています。背景ビューを設定するために使用しているコードを以下に示します。アルファ値のみを設定し、他のプロパティはデフォルト値に設定したままにします。
さらに、ポップオーバー内に表示されるテーブル ビュー コントローラーをどのように構成して、そのビュー (およびテキストを除くすべてのサブビュー) にも透明性を与える必要がありますか。
ありがとうございました!
configPopover.popoverBackgroundViewClass = [TransparentPopoverBackGroundView class];
TransparentPopoverBackGroundView.m:
#import "TransparentPopoverBackGroundView.h"
@implementation TransparentPopoverBackGroundView
@synthesize arrowOffset;
@synthesize arrowDirection;
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
self.alpha = 0.4;
}
return self;
}
+ (UIEdgeInsets)contentViewInsets {
return UIEdgeInsetsMake(5, 5, 5, 5);
}
+ (CGFloat)arrowHeight{
return 10.0;
}
+ (CGFloat)arrowBase{
return 10.0;
}