旋转 uiimageview 时出现问题
Posted
技术标签:
【中文标题】旋转 uiimageview 时出现问题【英文标题】:Prob when rotating an uiimageview 【发布时间】:2011-12-16 09:34:34 【问题描述】:当我使用 uiimageview 时,我想以一个小角度旋转它,我做到了。但是,旋转后的uiimageview的边框会出现尖刺,像锯子一样。我不知道为什么并尝试修复它,但我不能。请帮帮我。
【问题讨论】:
你能把你的图片或其他的东西发给我们吗? 【参考方案1】:几个选项..
1) 如果您使用 Core Graphics 功能旋转,您可以启用抗锯齿选项
CGContextSetAllowsAntialiasing(context, true);
CGContextSetShouldAntialias(context, true);
2) 为您的图像的所有 4 面添加一个 1 像素的透明边框。
还有一件事,您看到的尖峰有一个技术术语,它是混叠。防止混叠的技术称为抗混叠技术。希望这会有所帮助。
【讨论】:
@kent 不要忘记接受对您有帮助的答案 - 这就是 *** 的工作方式和帮助他人的方式。【参考方案2】:谢谢大家 :) 我的朋友向我展示了另一种修复它的方法。我认为这种方式比使用透明边框技巧更好。他将 info plist 文件中的一个属性“Renders with edge antialiasing”更改为 YES。一切都会好起来的:)。我希望它会帮助有人和我有同样的问题:)
【讨论】:
【参考方案3】:将 UIView 作为 subView 并将 UIImageView 放在 subView 上。 保持 subView 和 UIImageView 的大小相同。
现在,将“UIViewAnimationTransitionFlipFromRight”或“UIViewAnimationTransitionFlipFromLeft”与计时器一起使用。
【讨论】:
【参考方案4】:您可以轻松地在图像周围添加一个 1 像素的透明边框。因此,如果您的图像是 50x50
像素,您需要将其设置为 52x52
以使外部像素透明。当你旋转它现在应该看起来很好。
【讨论】:
以上是关于旋转 uiimageview 时出现问题的主要内容,如果未能解决你的问题,请参考以下文章
以编程方式设置动态uiimageview时出现LayoutConstraint错误
使用 performSegueWithIdentifier 时出现 Swift UIImageView 错误
自动旋转时出现 UIPopOverController 问题
当我尝试将 TapGestureRecognizer 添加到我的 UIImageView 时出现此错误:Unrecognized selector sent to class