zoukankan      html  css  js  c++  java
  • swift-自动计算字符串的宽高

    写一个方法来继承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);

     

     

     

     

  • 相关阅读:
    php 调试
    php 格式
    php 函数 将数组转换成标量变量:extract()
    jQuery 方法
    php echo字符串的连接格式
    wampserver php 设置时间
    TableView使用CATransform3D特效动画
    苹果手机制作gif图片
    全局修改Lable/Button字体
    关于 presentViewController 时机
  • 原文地址:https://www.cnblogs.com/brance/p/JuniorRookie.html
Copyright © 2011-2022 走看看