【问题标题】:White flickering animation when presenting modally模态呈现时白色闪烁动画
【发布时间】:2019-01-22 09:40:17
【问题描述】:

您好,我准备了简单的 tvOS 项目,我在其中以模态方式呈现视图控制器。在模态显示视图控制器时,我收到带有白色闪烁的淡入淡出动画(见下文)。如何消除闪烁?

我的代码:

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        view.backgroundColor = UIColor.black
    }

    @IBAction func button1(_ sender: Any) {
        let vc = UIViewController()
        vc.view.backgroundColor = UIColor(red: 0.2, green: 0, blue: 0, alpha: 1.0)
        present(vc, animated: true, completion: nil)
    }
}

我收到的动画:

【问题讨论】:

    标签: ios swift uikit tvos


    【解决方案1】:

    可能传出视图的 alpha 动画为零,这意味着它后面的壁纸图像可能在传入视图动画其 alpha 足以覆盖它之前开始显示。

    这是自定义演示动画吗?你能调整输出视图上 alpha 的变化方式吗?

    【讨论】:

    • 其实这是一个很好的观点。我发现在源和目标之间的转换过程中它们都是透明的,因此根窗口的背景颜色出现在屏幕上。我所要做的就是将背景颜色设置为黑色。
    【解决方案2】:

    要移除闪烁的动画,请将动画更改为 false。

    代码:

    present(vc, animated: false, completion: nil)
    

    【讨论】:

    • 我想保留那个动画。黑色和深红色之间的渐变动画。
    • 要淡化检查这个资源:raywenderlich.com/…
    猜你喜欢
    • 1970-01-01
    • 2014-08-02
    • 1970-01-01
    • 2014-08-24
    • 1970-01-01
    • 2012-06-18
    • 2015-06-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多