Fade in/out UIImageView 中的图像没有持续时间发生

Fade in/out Image in UIIamgeView happens with no duration

我在 DetailViewControllerviewDidLoad 中以编程方式创建了一个 UIIamge。我想.transitionCrossDissolve 将其当前图像转换为另一图像。我的问题是,一旦显示 DetailViewCOntroller,无论 duration 是什么,切换都会立即发生。我什至从未见过第一张图片。我正在使用以下代码。

    let rect = CGRect(x: 0, y: UIApplication.shared.statusBarFrame.height, width: view.frame.size.width, height: view.frame.size.height / 3.0)
    let imageView = UIImageView(frame: rect)
    imageView.image = #imageLiteral(resourceName: "head1")
    imageView.contentMode = .scaleAspectFill
    imageView.clipsToBounds = true
    view.addSubview(imageView)
    UIView.transition(with: imageView,
                      duration: 16.0,
                      options: .transitionCrossDissolve,
                      animations: { imageView.image = #imageLiteral(resourceName: "head3") },
                      completion: nil)

尝试在 viewDidAppear 委托中启动动画。认为这就是问题所在。