swift String 扩展

本文介绍了一段使用Swift语言实现的字符串通用扩展方法,包括获取字符串高度和将时间戳转换为特定格式的日期字符串的功能。通过这些方法,开发者可以更便捷地进行字符串处理和时间戳解析。
//

import Foundation
import UIKit

///
/// @brief String的通用扩展方法

///
extension String {
    ///
    /// @brief 获取字符串的高度
    /// @param fontSize 字体大小
    /// @param width 限制一行显示的宽度
    /// @return 返回文本在width宽度的条件下的总高度
    ///
    func height(let fontSize: CGFloat, let width: 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)
    }
}

 

转载于:https://www.cnblogs.com/yaoyao0110/p/5526225.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值