zoukankan      html  css  js  c++  java
  • swift String 扩展

    //
    
    import Foundation
    import UIKit
    
    ///
    /// @brief String的通用扩展方法
    
    ///
    extension String {
        ///
        /// @brief 获取字符串的高度
        /// @param fontSize 字体大小
        /// @param width 限制一行显示的宽度
        /// @return 返回文本在width宽度的条件下的总高度
        ///
        func height(let fontSize: CGFloat, let  CGFloat) ->CGFloat {
            let font = UIFont.systemFontOfSize(fontSize)
            let size = CGSizeMake(width, CGFloat.max)
            
            var style = NSMutableParagraphStyle()
            style.lineBreakMode = NSLineBreakMode.ByCharWrapping
            
            var attributes = [NSFontAttributeName: font, NSParagraphStyleAttributeName: style.copy()];
            
            // 强转成NSString
            var text = self as NSString
            var rect = text.boundingRectWithSize(size,
                options: NSStringDrawingOptions.UsesLineFragmentOrigin,
                attributes: attributes,
                context: nil)
            
            return rect.size.height
        }
        
        ///
        /// @brief 把时间戳转换成“2014年12月12日 8:20:20”格式的日期字符串
        /// @param timeStamp 时间戳
        /// @return “2014年12月12日 8:20:20”格式的日期字符串
        ///
        func dateStringFromTimeStamp(let timeStamp: NSString) ->String {
            var formatter = NSDateFormatter()
            formatter.dateFormat = "yyyy年MM月dd日 HH:MM:ss"
            
            let date = NSDate(timeIntervalSince1970: timeStamp.doubleValue)
            return formatter.stringFromDate(date)
        }
    }
    
    爱code的妖妖
  • 相关阅读:
    Python3 使用requests请求,解码时出错:'utf8' codec can't decode byte 0x83 in position 1: invalid start byte
    快速上手阿里云oss SDK
    peewee 通俗易懂版
    gunicorn开启、关闭和重启
    Vector和ArrayList区别
    Hibernate与MyBatis
    redis缓存
    Innodb学习
    基本数据结构-图
    基本数据结构-树
  • 原文地址:https://www.cnblogs.com/yaoyao0110/p/5526225.html
Copyright © 2011-2022 走看看