ios - 生成特定尺寸的 View 图像?

标签 ios swift

我有一个向用户显示一些信息的 View 。目前,用户可以点击分享按钮来分享 View 的图像,这样他们就可以轻松地将信息发布到 Twitter 上,或通过短信发送给 friend 。当然, View 是使用自动布局进行布局的,并且可以根据设备以不同的尺寸显示。图像输出看起来不错,但我想让应用程序以标准尺寸保存此图像,无论界面分辨率或方向如何。

生成指定尺寸的图像的最佳方法是什么?有没有一种简单的方法,或者我必须以完全不同的方式生成图像?以下是我目前执行此操作的代码:

UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0)
view.drawViewHierarchyInRect(view.bounds, afterScreenUpdates: false)
let snapshot = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()

let activityViewController = UIActivityViewController(activityItems: [snapshot], applicationActivities: nil)

if let popover = activityViewController.popoverPresentationController {
    popover.barButtonItem = shareButton
}

presentViewController(activityViewController, animated: true, completion: nil)

最佳答案

将宽度和高度约束连接到您的代码。暂时更改它们:

width.constant = 1234
height.constant = 1234

然后把它们放回去。

关于ios - 生成特定尺寸的 View 图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37780373/

相关文章:

ios - Swift:无法在可变对象参数上设置属性值

swift - 嵌套和关联的枚举值 Swift

ios - 在 iOS 上观察 Cloud Firestore 中的许多路径是不是一件坏事

ios - 在iOS项目中使用Boost Framework和OpenCV时出现编译错误

ios - parse.com 存储特定值一次

ios - UITableView 上方的 UIView 未显示——iOS

ios - 如何知道一个数字在 Swift 中是奇数还是偶数?

ios - 如何快速检查时间重叠?

swift - “非持久”S4TF 安装

ios - Swift:如何返回类<UITableViewDataSource>?