1

当我尝试UIGraphicsImageRenderer在 watchOS 应用程序中使用时,编译器会抛出错误。文档中的条目看起来仅适用于 iOS 和 tvOS。你知道为什么会这样吗?

import WatchKit

struct ImageGenerator() {
  func image() -> UIImage {
    let format = UIGraphicsImageRendererFormat() // ERROR
    format.scale = 1
    format.opaque = true

    let renderer = UIGraphicsImageRenderer(size: size, format: format) // ERROR
    let image = renderer.image { imageRendererContext in
      // ...
    }
  }
}
4

1 回答 1

3

UIGraphicsImageRenderer在 watchOS 上不可用。但是,您仍然可以在 watchOS 上使用旧版渲染 API:

func image() -> UIImage {
    UIGraphicsBeginImageContextWithOptions(yourImageSize, isOpaque, scale)
    defer { UIGraphicsEndImageContext() }
    let context = UIGraphicsGetCurrentContext()! 

    // draw your image at here...

    return UIGraphicsGetImageFromCurrentImageContext()! // get image
}
于 2017-01-19T07:10:54.940 回答