当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窗口中使用导航栏。
- 模态视图与导航控制器
- 如何将base64string解码/转换为NSData?
- CCSprite:batched sprites应该使用与batchnode相同的纹理吗?
- 我怎样才能检查一个NSData的Blob是有效的NSURLSessionDownloadTask的resumeData?
- Xcode 7将不会从在Xcode 6中构build有效归档的相同项目构build有效归档
- AWS Mobilehub:Swift 3更新,在启动选项中显示错误
- 连续调用startRecordingToOutputFileURL:
- 如何链接文件下载与进度视图
- 在input时调整包含UITextView的UITableViewCell