0
我想将图像生成到滚动视图(就像视频开始在默认的ios播放器中播放时一样)。如何使用“generateCGImagesAsynchronously”从视频加载图像序列?
let imageView = UIImageView()
let asset :AVAsset = AVURLAsset.init(url: url as URL)
let assetImgGenerate : AVAssetImageGenerator = AVAssetImageGenerator(asset: asset)
assetImgGenerate.appliesPreferredTrackTransform = true
assetImgGenerate.requestedTimeToleranceAfter = kCMTimeZero;
assetImgGenerate.requestedTimeToleranceBefore = kCMTimeZero;
var img = UIImage()
assetImgGenerate.appliesPreferredTrackTransform = true
let thumbTime: CMTime = asset.duration
let times = thumbTime as NSValue
assetImgGenerate.generateCGImagesAsynchronously(forTimes: [times], completionHandler: {(requestedTime, image, actualTime,result, error) -> Void in
img = UIImage(cgImage: image!)
imageView.image = img
})
scrollView.backgroundColor = UIColor.black
scrollView.contentSize = CGSize(width: CGFloat(imageView.frame.width), height: 0)
scrollView.addSubview(imageView)}
这不会给出任何输出。如何将图像生成为序列以在滚动视图中显示?
我在这里做错了什么?
谢谢你的回应。我知道我需要为每个返回值创建图像视图,我相信我需要遍历每个“times”变量的值。但我该怎么做,我是新来的。我应该在哪里放置循环执行?你能不能请教我。在此先感谢兄弟。 – fAiSaL
现在工作正常。我编码,就像你说的。我只有我缺乏的东西=逻辑。 Boooomm – fAiSaL
但正如你所说,图像在这里创造了很多记忆,我能做些什么来解决这个问题? – fAiSaL