首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在没有像素化的情况下调整(缩小) UIView的大小?

如何在没有像素化的情况下调整(缩小) UIView的大小?
EN

Stack Overflow用户
提问于 2011-03-24 03:34:23
回答 1查看 645关注 0票数 0

在我的应用程序中,我创建了一个全屏视图,然后将其缩小(约为原始大小的十分之一),以便稍后可以将其动画化为全尺寸。问题是,视图在这种大小下看起来很糟糕,而且是高度像素化的。

这是全尺寸视图:

这是缩小的视图:

我正在使用setFrame:缩小视图--有什么方法可以告诉iOS使用高质量插值吗?或者我已经得到了最高质量的插值,这是它能做的最好的事情了?

EN

回答 1

Stack Overflow用户

发布于 2011-03-24 03:40:42

我建议在缩小视图之前将其转换为图像(我假设您当前有由许多子视图组成的日视图,然后通过调整框架来缩小视图)。

如果你看一看,你会发现这就是苹果实现它的方式:他们不是真的缩小视图,而是将视图的内容捕获为图像,用该图像替换视图,然后缩小图像。这样做的原因有很多:效率(您可以摆脱缩小的视图,并用单个UIImageView替换它们)、速度和质量。

要将UIView另存为图像,您应该执行以下操作:

代码语言:javascript
复制
UIGraphicsBeginImageContext(myView.bounds.size);
[myView.layer renderInContext:UIGraphicsGetCurrentContext()];
viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

...then将视图替换为图像,并将其缩小。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5410632

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档