【问题标题】:Glow or Sun light effect in iOSiOS 中的辉光或太阳光效果
【发布时间】:2016-09-19 15:38:46
【问题描述】:

我的 UIViewController 需要发光或太阳光效果(类似这样的东西:http://www.thewhitegoddess.co.uk/the_elements/the_planets/images/sun.jpg)。

我尝试了这个https://github.com/thesecretlab/UIView-Glow (http://www.secretlab.com.au/blog/2012/06/23/glowing) 并在图层上放置阴影效果,但是当我增加效果大小时它都不起作用。

请指导我并提供解决方案。 预先感谢。

【问题讨论】:

    标签: ios objective-c iphone swift


    【解决方案1】:

    这是一个您可以使用的发光示例,您需要混合一些颜色和发光,但这对您来说是一个开始。如果您需要,我还提供了一个动画示例:

    带动画:

    func makeViewShine(view: UIView) {
        view.layer.shadowColor = UIColor.yellow.cgColor
        view.layer.shadowRadius = 10.0
        view.layer.shadowOpacity = 1.0
        view.layer.shadowOffset = .zero
        UIView.animate(withDuration: 0.7, delay: 0, options: [.autoreverse, .curveEaseInOut, .repeat, .allowUserInteraction], animations: {() -> Void in
            view.transform = CGAffineTransform(scaleX: 1.2, y: 1.2)
            }, completion: {(finished: Bool) -> Void in
                view.layer.shadowRadius = 0.0
                view.transform = CGAffineTransform(scaleX: 1.0, y: 1.0)
        })
    }
    

    没有动画:

    func makeViewShine(view: UIView) {
        view.layer.shadowColor = UIColor.yellow.cgColor
        view.layer.shadowRadius = 10.0
        view.layer.shadowOpacity = 1.0
        view.layer.shadowOffset = .zero
    }
    

    要使用它,只需调用方法并传递视图。

    【讨论】:

    • #Rashwan L,我想要 view.layer.shadowRadius = 100.0 或 200.0 或 300.0 用于全屏动画。当我将 shadowRadius 10 更改为 100 时,它不起作用:(但是,谢谢你
    猜你喜欢
    • 2012-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多