Swift 공통 글로벌 함수

2714 단어
  • 출력 로그
  • /**  
     * parameter message:   
     * parameter file:      
     * parameter function:    
     * parameter line:      
     */
    func log(message: String,
             function: String = #function,
             file: String = #file,
             line: Int = #line) {
        
        print("Message \"\(message)\" (File: \(file), Function: \(function), Line: \(line))")
    }
    
  • RGB 색상 값이 UICollor로 바뀝니다
  • /** RGB 
     * parameter r:  
     * parameter g:  
     * parameter b:  
     * parameter a:  
     */
    func RGB (r:CGFloat,
               g:CGFloat,
               b:CGFloat,
               alpha:CGFloat) -> UIColor
    {
        return UIColor (red: r/225.0, green: g/225.0, blue: b/225.0, alpha: alpha)
    }
    
  • 시스템 버전 및 버전 판단 획득
  • /**   */
    func IOSVersion() -> Double {
           //  swfit 2.3
    //    return (UIDevice.currentDevice().systemVersion as NSString).doubleValue
           //  swfit 3.0
        return (UIDevice.current.systemVersion as NSString).doubleValue
    }
    /**  iOS7.0 */
    func IS_IOS7() -> Bool {
        return IOSVersion() >= 7.0
    }
    /**  iOS8.0 */
    func IS_IOS8() -> Bool {
        return IOSVersion() >= 8.0
    }
    
  • 클래스 이름에 따라 컨트롤러를 만듭니다
  • /**   
     *  parameter className  
     */
    func ClassFromString(className: String) -> UIViewController? {
    // swfit 2.3
    //    let appName = NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleName")
    // swfit 3.0
        let appName = Bundle.main.object(forInfoDictionaryKey: "CFBundleName")
    
        let name = "\(appName!).\(className)"
        if let tmpClass = NSClassFromString(name) as? UIViewController.Type {
            return tmpClass.init()
        }else {
            return nil
        }
    }
    
  • 문자 크기 설정
  • /**   
     *  parameter name   ( )
     *  parameter size  
     */
    func kFont(name: String, size: CGFloat) -> UIFont {
        if !kIsEmpty(name) {
            return UIFont.init(name: name, size: size)!
        }else {
               //swfit 2.3
    //        return UIFont.systemFontOfSize(size)
               //swfit 3.0
               return UIFont.systemFont(ofSize: size)
        }
    }
    
  • 문자열이 비어 있는지 판단합니다
  • /**   */
    func kIsEmpty(string: String) -> Bool {
        if string.isEmpty || string == "" {
            return true
        }else {
            return false
        }
    }
    

    7.화면 폭
    /**   */
    func kIphone_Width() -> CGFloat {
      // swift 2.3
    //    return UIScreen.mainScreen().bounds.width
      // swift 3.0
      return UIScreen.main.bounds.width
    }
    
    /**   */
    func kIphone_Height() -> CGFloat {
          // swift 2.3
    //    return UIScreen.mainScreen().bounds.height
      // swift 3.0
      return UIScreen.main.bounds.height
    }
    

    좋은 웹페이지 즐겨찾기