2

有谁知道如何或是否可以捕获我当前视图下方的视图的图像、猜测位图?

所以说你有一个 MKMapView (MyMapview) 320x460 的最顶层视图,然后在 MyMapview 上方显示一个弹出窗口或另一个 uiview (2ndView)300x300。然后第三个视图 (3rdView)320x320 显示在 MyMapview 和 2ndView 的顶部。

所以你最终得到

第三视图 320x320 第二视图 300x300 我的地图视图 320x460

现在我想做的是在 2ndView 和 MyMapview 上捕获所有内容的图像,但只能在 3rdView 的框架下。

我想要做的是重新创建 iOS7 的外观,而不需要用户使用 iOS7。这意味着我希望下面的视图显示出来,但要模糊。所以我想我会在 0.7 处制作 3rdView alpha,但也包含一个 UIImageView 作为 3rdViews 最底层。然后我拍摄下面的视图快照,将其模糊,并存储在我的 UIImageView 中。现在我的 3rdViews 背景是下面视图的快照,但模糊。

还是有人有更基于语言的方式来做到这一点?我无法在 Photoshop 中创建此背景图像并对其进行模糊处理,然后将其导入,因为最底部的视图是实时 mkmapview(意味着我无法对芝加哥的地图进行快照,将其模糊并导入,因为地图可能在达拉斯或巴黎。

4

1 回答 1

1

此方法会将视图转换为图像:

UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0);
[view.layer renderInContext:UIGraphicsGetCurrentContext()];

UIImage * img = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

您可以做的是删除顶视图,然后获取所需视图的图像并再次添加顶视图..希望它有效

于 2013-06-18T21:26:52.557 回答