iOS 开发小记-01

作者: hanson21 | 来源:发表于2019-12-08 21:38 被阅读0次

    最近又开始写不少业务代码了,有些小知识点小坑,用这个系列记录一下。
    iOS 开发小记-01
    iOS 开发小记-02

    1. UITextView 修改部分字体颜色,换行垂直居中

    // 使用 \n 来换行
    let attributeString = NSMutableAttributedString(string: "测试文字测试文字测试文字测试文字,高亮文字高亮文字高亮文字,\n换行后的文字换行后的文字")
    attributeString.addAttribute(NSAttributedString.Key.foregroundColor, value: UIColor.black, range: NSMakeRange(0, attributeString.length))
    // 使用 NSMakeRage 来修改部分字体颜色
    attributeString.addAttribute(NSAttributedString.Key.font, value: UIFont.systemFont(ofSize: 12), range: NSMakeRange(0, attributeString.length))
    attributeString.addAttribute(NSAttributedString.Key.foregroundColor, value: UIColor.cyan, range: NSMakeRange(17, 12))
    textView.attributedText = attributeString
    // 注意这个 textAligment 需要在 attributedText 赋值后调用,不然不生效
    textView.textAlignment = .center
    

    注意:UITextView 居中(textAlignment) 不生效问题

    image.png

    2. 应用内禁用 DarkMode

    Info.plist 中添加 User Interface Style : Light,即可在应用内禁用暗黑模式。

    3. 给 UIView 添加半边圆角

    let maskPath = UIBezierPath(roundedRect: CGRect(x: 0, y: 0, width: 240, height: 40),
    byRoundingCorners: [.topRight, .bottomRight], 
    cornerRadii: CGSize(width: 20, height: 20))
    
    let roundCornerShape = CAShapeLayer()
    roundCornerShape.path = maskPath.cgPath
    
    self.layer.mask = roundCornerShape
    

    4. 给 URL 添加参数的方法

    extension URL {
        func appending(_ queryItem: String, value: String?) -> URL {
            guard var urlComponents = URLComponents(string: absoluteString) else { return absoluteURL }
            
            let queryItem = URLQueryItem(name: queryItem, value: value)
            
            var queryItems: [URLQueryItem] = urlComponents.queryItems ??  []
            queryItems.append(queryItem)
            urlComponents.queryItems = queryItems
            
            return urlComponents.url!
        }
    }
    

    相关文章

      网友评论

        本文标题:iOS 开发小记-01

        本文链接:https://www.haomeiwen.com/subject/oulvgctx.html