UIPopoverController的内容很模糊

rda*_*sau 5 blurry ipad ios uipopover

我在我的应用程序中呈现了一个UIPopoverController,但内容视图看起来有点模糊.

为了演示,我将内容视图控制器的第二个实例直接放在self.view上,通过比较很容易看出弹出窗口中的文本是模糊的.在设备和模拟器中都会出现此问题.

截图:

在此输入图像描述

码:

// ...    

// init the edit view controller
editSOViewController = [[EditViewController alloc] 
initForNewObjectWithDict:dict];

// init popover with editSOViewController
UIPopoverController *popover = [[UIPopoverController alloc] 
initWithContentViewController:editSOViewController];

// set size
navPopover.popoverContentSize = 
CGSizeMake(editSOViewController.view.frame.size.width, 
[editSOViewController heightForViewControllerInPopoverView]);  

// this is blurry
[popover presentPopoverFromRect:image.frame
                            inView:self.view
          permittedArrowDirections:UIPopoverArrowDirectionAny
                          animated:YES];

// this is clear
editViewController *test =
 [[EditViewController alloc] initForNewObjectWithDict:dict];
[self.view addSubview:test.view];
Run Code Online (Sandbox Code Playgroud)

有什么可能导致这个的想法?我认为UIPopover可能会略微缩小视图,但我用图像编辑器排列了两个例子,大小没有差异(但在popover视图中有明显的"模糊").

如果我使用WEPopover(https://github.com/werner77/WEPopover/),我仍然会遇到同样的问题.

谢谢.

小智 9

使用具有小数部分的帧值导致在像素之间定位,这导致模糊.

要避免这种情况,请使用round或等函数将帧值设置为没有分数的数字floor.