微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ios – 类型’String’的值没有成员’stringByTrimmingCharactersInSet’

将我的项目转换为 swift 3后,我得到以下值“String”,该块中的第一行没有成员“stringByTrimmingCharactersInSet”错误
extension UIColor {
    convenience init (hex:String) {
        var cString:String = hex.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet()).uppercased() // error appears on this line

        if (cString.hasPrefix("#")) {
            cString = (cString as Nsstring).substring(from: 1)
        }



        let rString = (cString as Nsstring).substring(to: 2)
        let gString = ((cString as Nsstring).substring(from: 2) as Nsstring).substring(to: 2)
        let bString = ((cString as Nsstring).substring(from: 4) as Nsstring).substring(to: 2)

        var r:CUnsignedInt = 0,g:CUnsignedInt = 0,b:CUnsignedInt = 0;
        Scanner(string: rString).scanHexInt32(&r)
        Scanner(string: gString).scanHexInt32(&g)
        Scanner(string: bString).scanHexInt32(&b)


        self.init(red: CGFloat(r) / 255.0,green: CGFloat(g) / 255.0,blue: CGFloat(b) / 255.0,alpha: CGFloat(1))
    }
}

我猜这个错误是由于’stringByTrimmingCharactersInSet’的语法变化而导致的.这个更正是什么?

解决方法

新的语法是这样的:
var cString = hex.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines).uppercased()

作为一个建议,您不需要指定cString是一个字符串,因为这是假定与您分配给它的值.

原文地址:https://www.jb51.cc/iOS/329347.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐