0

MKMap があります。この上に、ちょっとした凡例があります。凡例内のラベルと画像はマップの上に正常に表示されますが、長方形/ベジエ自体は表示されません。サブビューとして追加しようとしましたが、失敗します。これを回避する方法はありますか?

マップで引き続き有効にするには、タッチが必要です。

ありがとう。

- (void) drawRect:(CGRect)rect
{
    //TODO
        //Hover view for touching icons
        //Get rect on top of map as well
        //Border on frame
        //IsIpad slight larger frame/text/image
    int conX = [GeneralHelper GetCenteredXPosForObj:220 :self];
    int conY = 60;

    //Create box
    CGRect container = CGRectMake(conX, conY, 220, 50);
    UIBezierPath* path = [UIBezierPath bezierPathWithRoundedRect:container cornerRadius:5.0];
    [[UIColor blueColor] setFill];
    [path fillWithBlendMode:kCGBlendModeNormal alpha:0.7];
    //How to add to subview..?

    //NZPost image 38x37
    UIImageView *nzPostImageView = [[UIImageView alloc] initWithFrame:CGRectMake(conX + 20, conY+15, 25, 24)];
    [nzPostImageView setImage:[UIImage imageNamed:@"icon-map-post.png"]];
    [self addSubview:nzPostImageView];

    //NZPost label
    LegendLabel *postLabel = [[LegendLabel alloc] initWithFrame:CGRectMake(conX + 50, 78, conY, 15) ];
    postLabel.text = @"NZ post";
    [self addSubview: postLabel];

    //Incharge image 38x38
    UIImageView *inChargeImageView = [[UIImageView alloc] initWithFrame:CGRectMake(conX + 120, conY+15, 25, 24)];
    [inChargeImageView setImage:[UIImage imageNamed:@"icon-map-incharge.png"]];
    [self addSubview:inChargeImageView];

    //Incharge label
    LegendLabel *inChargeLabel = [[LegendLabel alloc] initWithFrame:CGRectMake(conX + 150, conY+18, 60, 15) ];
    inChargeLabel.text = @"In charge";
    [self addSubview: inChargeLabel];


}
4

0 に答える 0