mrd*_*enz 5 iphone uipopovercontroller ios
我想UIPopoverArrowDirection向左移动,使实际的箭头不再居中,但是左边是25%,右边是75%.
为了帮助理解我的意思,请看两个屏幕截图,我希望它像第二个...


问题是没有真正的方法可以深入挖掘popover类......
通过指定"presentPopoverFromRect"并使该rect受到足够的约束,这对于内置类已经可行了.

以下是直接从导致上述内容的代码中获取的代码.额外的绒毛是因为小齿轮的东西在UINavigationBar的UIToolbar中.r是UIToolbar的框架,它被调整到正确的位置(箭头)或者稍微偏离中心.MGSettingsView是视图控制器("启用转换","启用夜间模式"等).
UINavigationItem *item = scrollView.navbar.topItem;
UIToolbar *authorTools = (UIToolbar *)[item.rightBarButtonItem customView];
CGRect r = authorTools.frame;
r.size.width = 18;
r.origin.x += 12;
CGSize popoverSize = CGSizeMake(300.f, 500.f);
MGSettingsView *settingsView = [[MGSettingsView alloc] initWithSize:popoverSize];
UIPopoverController *poctl = [[UIPopoverController alloc] initWithContentViewController:settingsView];
settingsView.popover = poctl;
poctl.delegate = self;
poctl.popoverContentSize = popoverSize;
[poctl presentPopoverFromRect:r inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
[settingsView release];
Run Code Online (Sandbox Code Playgroud)
如果这不是你所要求的,那么我认为你最好重新解释一下你的问题.:)
| 归档时间: |
|
| 查看次数: |
7250 次 |
| 最近记录: |