1

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;
}
4

1 に答える 1

2

このリンクを試してください

設定

#define DEFAULT_TINT_COLOR [UIColor blackColor];

#define DEFAULT_TINT_COLOR [UIColor clearColor];
于 2013-03-30T10:10:47.300 に答える