0

ビューコントローラーから別のビューコントローラーに渡すたびにカメラビューをぼかすために使用するカメラViewControllerにblurEffectがあります。

それを行い、アルファ値をアニメーション化します。

ぼかし効果の変数は次のとおりです。

var blur = UIBlurEffect(style: .dark)
var blurView = UIVisualEffectView()

アプリがバックグラウンドまたはフォアグラウンドに入ったときに、プロパティにアクセスしてアルファ値を変更できるようにしたいと考えています。

これは私が SceneDelegate で行ったことです:

func sceneWillEnterForeground(_ scene: UIScene) {

    guard let cameraViewController = tabbarviewcontroller.viewControllers[1].viewControllers.first as? CameraViewController else{
        print("there is an error in retrieving the cameraController")
        return
    }
    
    UIView.animate(withDuration: 0.25, delay: 0.2, options: [.curveEaseOut,. allowUserInteraction], animations: {
        cameraViewController.blurView.alpha = 0
    })
}

func sceneDidEnterBackground(_ scene: UIScene) {
    
    guard let cameraViewController = tabbarviewcontroller.viewControllers[1].viewControllers.first as? CameraViewController else{
               print("there is an error in retrieving the cameraController")
               return
           }

    cameraViewController.blurView.alpha = 1
    
}

cameraViewController に正しくアクセスできますが、blurView.alpha アニメーションが機能しません。この問題の原因について何か提案はありますか?

4

0 に答える 0