0

320px x 320pxを開くための次のコードがありますUIPopoverControllerが、何らかの理由で、ポップオーバーは本来よりもはるかに高くなっています-指定した高さ(320px)の約2倍です。

何が問題なのですか?

    colorPicker = [[RSColorPickerView alloc] initWithFrame:CGRectMake(20.0, 20.0, 320.0, 320.0)];
    [colorPicker setDelegate:self];
    [colorPicker setBrightness:1.0];
    [colorPicker setCropToCircle:YES];
    [colorPicker setBrightness:1.0];
    [colorPicker setBackgroundColor:[UIColor clearColor]];

    UIColor * aColor = [UIColor colorWithRed:0.803 green:0.4 blue:0.144 alpha:1];
    [colorPicker setSelectionColor:aColor];

    UIView *newview = [[UIView alloc] initWithFrame:CGRectMake(20.0, 20.0, 320.0, 320.0)];
    [newview addSubview:colorPicker];

    UIViewController *newviewcontroller = [[UIViewController alloc] init];
    [newviewcontroller setView:newview];

    UIPopoverController *newpopover =
    [[UIPopoverController alloc] initWithContentViewController:newviewcontroller];

    newpopover.delegate = self;
    [self.colourController setPopoverContentSize:CGSizeMake(320, 320)];
    self.colourController = newpopover;

    [self.colourController presentPopoverFromRect:CGRectMake(149, 540, 1, 1) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionLeft animated:YES];
4

1 に答える 1

2

popoverContentSizeポップオーバーに表示されているViewControllerでを設定する必要があります。間違ったViewControllerに設定しています。

newpopover.delegate = self;
self.colourController = newpopover;
[self.colourController setPopoverContentSize:CGSizeMake(320, 320)];

あなたはこれらの最後の2行を順不同でやっていた。

于 2012-11-08T17:32:58.863 に答える