当UINavigationController在UIPopoverController中呈现时,UIBarButtonItem截断
当navController出现在UIPopoverController中时,UIBarButtonItem在导航栏中被切断。 任何想法是什么造成这个?
问题的屏幕截图: http : //www.flickr.com/photos/92771610@N02/8432176079
代码如下:
UIViewController *vc = [[[UIViewController alloc] init] autorelease]; UIBarButtonItem *saveButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSave target:self action:@selector(saveAction:)]; vc.navigationItem.rightBarButtonItem = saveButton; UINavigationController *navController = [[[UINavigationController alloc] initWithRootViewController:vc] autorelease]; UIPopoverController *popoverController = [[UIPopoverController alloc] initWithContentViewController:navController]; popoverController.delegate = self; [popoverController presentPopoverFromRect:buttonThatMakesThePopoverAppear.frame inView:self.view.superview permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
谢谢贡萨洛
这是因为您不尊重iOS人机界面指南 。
您的自定义UIBarButtonItem
视图和这些元素的自定义背景图像应该是30像素高。 popover的斜angular边框正确地裁剪你的自定义图稿,因为它们不应该那么大。
当没有通过UIPopoverController
呈现时,这些button在iOS 6中显示正常,但只是因为没有视图剪裁边界。 请注意,在iOS 5中,这确实发生了,所以虽然您应该看起来不错,但要确保您在旧版本中进行testing。
在其他地方使用外观pipe理器在UINavigationController和UIBarButtonItem上设置自定义的图像/背景/标题位置,这是因为它没有考虑到弹窗的斜面边框。 解决scheme:在使用之前颠倒为自定义外观设置的值,或者使自定义适用于所有情况,包括在popup窗口中使用导航栏。
- 如何在Twitter上发布而不显示ios中的对话?
- iOS Safariclosures时停止HTML5audio循环播放
- 核心animationCALayer掩盖animationperformance
- 在App使用过程中,cocos2d v3重新定位屏幕
- MKMapView iOS自定义用户位置注释未显示/更新位置
- 如何播放背景iPhone SDK中的音乐
- 'GPUImageOutput <GPUImageInput>'没有可见的@interface声明select器'imageFromCurrentlyProcessedOutputWithOrientation:'
- 在iOS Safari浏览器会话之间不保存Cookie
- 如何在没有滚动的情况下根据文本长度动态更改textview高度和单元格高度