Ipad PopOverview控制器的框架
我显示了一个Ipad PopOverview控制器的框架,ipad,cocoa-touch,uipopovercontroller,Ipad,Cocoa Touch,Uipopovercontroller,我显示了一个PopoverViewController,但无法正确设置其帧。当我点击一个按钮时,将显示我的PopoverViewController -(IBAction)AddTheTimePicker:(id)sendar { if(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad) { UIButton *button = (UIButton *)sendar; [button setT
PopoverViewController
,但无法正确设置其帧。当我点击一个按钮时,将显示我的PopoverViewController
-(IBAction)AddTheTimePicker:(id)sendar {
if(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad)
{
UIButton *button = (UIButton *)sendar;
[button setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
UIViewController* popoverContent = [[UIViewController alloc] init];
UIView *popoverView = [[[UIView alloc] init]autorelease]; //view
popoverView.backgroundColor = [UIColor blackColor];
DatePicker=[[[UIDatePicker alloc]init]autorelease];//Date picker
DatePicker.frame=CGRectMake(0,44,320, 216);
DatePicker.datePickerMode = UIDatePickerModeDate;
[DatePicker setTag:10];
UIToolbar *pickerDateToolbar = [[[UIToolbar alloc] initWithFrame:[self isViewPortrait]?CGRectMake(0, 0, 320, 44):CGRectMake(0, 0, 320, 44)]autorelease];
pickerDateToolbar.barStyle = UIBarStyleBlackOpaque;
[pickerDateToolbar sizeToFit];
NSMutableArray *barItems = [[[NSMutableArray alloc] init]autorelease];
UIBarButtonItem *doneBtn = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(dateChanged:)]autorelease];
[barItems addObject:doneBtn];
UIBarButtonItem *flexSpace = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil]autorelease];
UILabel *toolBarItemlabel;
if([self interfaceOrientation] == UIInterfaceOrientationPortraitUpsideDown || [self interfaceOrientation] == UIInterfaceOrientationPortrait)
toolBarItemlabel= [[[UILabel alloc]initWithFrame:CGRectMake(0, 0, 180,30)]autorelease];
else
toolBarItemlabel = [[[UILabel alloc]initWithFrame:CGRectMake(0, 0, 200,30)]autorelease];
[toolBarItemlabel setTextAlignment:UITextAlignmentCenter];
[toolBarItemlabel setTextColor:[UIColor whiteColor]];
[toolBarItemlabel setFont:[UIFont boldSystemFontOfSize:16]];
[toolBarItemlabel setBackgroundColor:[UIColor clearColor]];
UIBarButtonItem *buttonLabel =[[[UIBarButtonItem alloc]initWithCustomView:toolBarItemlabel]autorelease];
[barItems addObject:buttonLabel];
[barItems addObject:flexSpace];
UIBarButtonItem *SelectBtn = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(DatePickercancelClick:)]autorelease];
[barItems addObject:SelectBtn];
[pickerDateToolbar setItems:barItems animated:YES];
[popoverView addSubview:DatePicker];
[popoverView addSubview:pickerDateToolbar];
popoverContent.view = popoverView;
popoverController = [[UIPopoverController alloc] initWithContentViewController:popoverContent];
popoverController.delegate=self;
[popoverContent release];
[popoverController setPopoverContentSize:CGSizeMake(320, 264) animated:NO];
[popoverController presentPopoverFromRect:[sendar frame] inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
}
}
ui按钮
的框架是(450285,80 30)
。我想在这个按钮下面显示一个箭头标记指向按钮的弹出框。但是我得到了这样的结果:
我怎样才能得到它呢?除了自己制作外,还有很多定制的popover,可以满足您的所有需求。我已经使用了我认为简单而有用的许可证,在计划将其用于您的项目之前,请不要忘记检查许可证。尝试以下方法:-
-(IBAction)products:(id)sender{
UIButton* btn = (UIButton *)sender;
[productsPopover presentPopoverFromRect:[btn bounds] inView:btn permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}
我该怎么使用这些爆米花呢?