在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
写一个方法来继承String //自动控制文字换行及宽度 extension String { func textSizeWithFont(font: UIFont, constrainedToSize size:CGSize) -> CGSize { var textSize:CGSize! if CGSizeEqualToSize(size, CGSizeZero) { let attributes = NSDictionary(object: font, forKey: NSFontAttributeName) textSize = self.sizeWithAttributes(attributes as! [String : AnyObject] as [String : AnyObject]) } else { let option = NSStringDrawingOptions.UsesLineFragmentOrigin let attributes = NSDictionary(object: font, forKey: NSFontAttributeName) let stringRect = self.boundingRectWithSize(size, options: option, attributes: attributes as! [String : AnyObject] as [String : AnyObject], context: nil) textSize = stringRect.size } return textSize } } 用法: let projectText="我是一段字符串,来计算我的高度吧"; let projectSize=projectText.textSizeWithFont(UIFont.systemFontOfSize(14), constrainedToSize:CGSizeMake(100, 200)) let comProjectW:CGFloat=projectSize.width; let comProjectH:CGFloat=projectSize.height; //记得要在计算的字符串UILable中加上 UIlable.font=UIFont.systemFontOfSize(14); //显示几行 UIlable.numberOfLines=1;
UIlable.frame = CGRectMake(50, 50, comProjectW, comProjectH);
|
请发表评论