gpt4 book ai didi

iphone - 将工具栏和选择器作为 UIPopoverController 的 subview 时出现问题

转载 作者:行者123 更新时间:2023-11-29 03:43:14 24 4
gpt4 key购买 nike

我想将工具栏和选择器 View 作为 popovercontroller 的 subview ,为此我执行以下操作,到目前为止我的选择器 View 显示完美,但就在其上方,我还想显示我的工具栏,其中有名为的按钮为此,我执行以下操作,如果您发现我正在做的事情有问题,请指导我

- (IBAction)setAlarm:(id)sender {

UIViewController* popoverContent = [[UIViewController alloc] init];
UIView* popoverView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 344)];
popoverView.backgroundColor = [UIColor whiteColor];


[popoverView addSubview:toolbar];
[popoverView addSubview:timePicker];

timePicker.hidden = NO;
toolbar.hidden = NO;

popoverContent.view = popoverView;

//resize the popover view shown
//in the current view to the view's size
popoverContent.contentSizeForViewInPopover = CGSizeMake(320, 216);

//create a popover controller
popoverController = [[UIPopoverController alloc] initWithContentViewController:popoverContent];
timePicker.frame = popoverView.bounds;
toolbar.frame = popoverView.bounds;

CGRect popoverRect ;
popoverRect.origin.x =591;
popoverRect.origin.y = 139;
popoverRect.size.height = 95;
popoverRect.size.width = 44;

[popoverController presentPopoverFromRect:popoverRect
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionUp
animated:YES];

//release the popover content
[popoverView release];
[popoverContent release];

timePicker.hidden = NO;
toolbar.hidden = NO;


}

最佳答案

问题在于您将展位 subview 的框架设置为相同的值:

timePicker.frame = popoverView.bounds;
toolbar.frame = popoverView.bounds;

因此,最先添加的一个将隐藏在另一个的后面。您需要设置框架,以便工具栏正确定位在选择器上方(并调整弹出窗口的大小以留出两者的空间)。


类似于:

CGRect toolbarFrame = toolbar.frame;
toolbarFrame.size.width = 320;
toolbar.frame = toolbarFrame;

CGRect pickerFrame = timePicker.frame;
pickerFrame.origin.y = toolbarFrame.size.height;
pickerFrame.size.width = 320;
timePicker.frame = pickerFrame;

popoverView.frame = CGRectMake(0, 0, 320, pickerFrame.origin.y + pickerFrame.size.height);

popoverContent.contentSizeForViewInPopover = popoverView.frame.size;

关于iphone - 将工具栏和选择器作为 UIPopoverController 的 subview 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18073013/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com