美文网首页Swift学习Swift收集文章Swift编程
Swift开发之实用的Category看了不后悔

Swift开发之实用的Category看了不后悔

作者: 贝尔特伦 | 来源:发表于2016-07-28 12:37 被阅读948次

    一:查找UIView及其子类的根父视图控制器

    extension UIView{
    
    func zyViewController() -> UIViewController? {
        var next = self.next;
       
        while next != nil {
            if next is UIViewController {
                return next as? UIViewController;
            }
            next = next?.next;
        }
        
        
        return nil;
    }
    
    }
    

    在Swift中do {}while循环,在Swift的测试中,改为repeat{}while

    二:计算字符串所占的空间大小即Size

    extension NSString{
    //返回字符串所占用的尺寸. 字体大小   最大值可以设置无限大
    
    func sizeWithFontMaxSize(font:UIFont,maxSize:CGSize) -> CGSize{
        let attrs = [NSFontAttributeName : font] as NSDictionary;
        
        
        return self.boundingRectWithSize(maxSize, options: NSStringDrawingOptions.UsesLineFragmentOrigin, attributes: attrs as? [String : AnyObject], context: nil).size;
    }
    
    
    }
    

    这里第一个参数UIFont是字体大小,maxSi是其宽高的最大值,设置了之后,在计算字符串大小的时候,最大宽度或高度,不会超过你所设置的maxSize中的宽高。

    相关文章

      网友评论

      本文标题:Swift开发之实用的Category看了不后悔

      本文链接:https://www.haomeiwen.com/subject/hhsajttx.html