Swift自动计算Label文字决定宽高的封装

 func getLabHeigh(labelStr:String,font:UIFont,width:CGFloat) -> CGFloat {

        let statusLabelText: NSString = labelStr

        let size = CGSizeMake(width, 900)

        let dic = NSDictionary(object: font, forKey: NSFontAttributeName)

        let strSize = statusLabelText.boundingRectWithSize(size, options: .UsesLineFragmentOrigin, attributes: dic as? [String : AnyObject], context:nil).size

        return strSize.height

    }

    

    func getLabWidth(labelStr:String,font:UIFont,height:CGFloat) -> CGFloat {

        let statusLabelText: NSString = labelStr

        let size = CGSizeMake(900, height)

        let dic = NSDictionary(object: font, forKey: NSFontAttributeName)

        let strSize = statusLabelText.boundingRectWithSize(size, options: .UsesLineFragmentOrigin, attributes: dic as? [String : AnyObject], context:nil).size

        return strSize.width

    }

posted @ 2016-08-21 19:36  頭文字C  阅读(3111)  评论(0编辑  收藏  举报