【问题标题】:Value of type 'String' has no member 'stringByTrimmingCharactersInSet'“String”类型的值没有成员“stringByTrimmingCharactersInSet”
【发布时间】:2016-12-03 07:55:05
【问题描述】:

将我的项目转换为 swift 3 后,我在此块的第一行收到以下 Value of type 'String' has no member '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' 的语法变化造成的。对此有什么更正?

【问题讨论】:

标签: ios swift xcode swift3


【解决方案1】:

对于 Int 和 Float,我该如何编码?

    private var currentTotal_passengers: Int = 0 {
    didSet {
        currentTotal_passengers = currentTotal_passengers.trimmingCharacters(in: CharacterSet .whitespacesAndNewlines)
    }
}

【讨论】:

  • 这篇文章看起来不像是试图回答这个问题。这里的每一篇文章都应该明确地尝试回答这个问题;如果您有批评或需要澄清问题或其他答案,您可以在其下方直接post a comment(如这个)。请删除此答案并创建评论或新问题。见:Ask questions, get answers, no distractions
【解决方案2】:

你也可以试试这个。

let trimmedString = hex.trimmingCharacters(in: CharacterSet.whitespaces)

【讨论】:

    【解决方案3】:

    新的语法是这样的:

    var cString = hex.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines).uppercased()
    

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

    【讨论】:

      【解决方案4】:

      阅读 Swift 3 文档;新的 Swift 3 API 是:

      func trimmingCharacters(in set: CharacterSet) -> String
      

      https://developer.apple.com/reference/swift/string/1643030-trimmingcharacters

      【讨论】:

        猜你喜欢
        • 2016-05-27
        • 2019-08-21
        • 2019-02-03
        • 2016-06-08
        • 2017-02-14
        • 2018-07-12
        • 2018-03-14
        • 2019-07-25
        • 1970-01-01
        相关资源
        最近更新 更多