İçeriğe geç

Swift ile hex renk fonksiyonu

swift

İOS uygulamalarımızda viewlerin veya objelerin renklerini değiştirirken.UIColor sınıfını kullanıyoruz ancak bu sınıfın init methodları css’den alışık olduğumuz hex kodlarını desteklemiyor.Bizde kendi yazacağımız fonksiyon ile istediğiniz nesneyi hex kodu ile rengini değiştirebilirsiniz dilerseniz UIColor sınıfına extension şeklinde fonksiyonu yeniden düzenleyebilirsiniz 😉

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        
       self.view.backgroundColor = colorHex("#91CF8D")
      
    }
    
    func colorHex(hex:String)->UIColor {
        
        var red: CGFloat = 0.0
        var green: CGFloat = 0.0
        var blue: CGFloat = 0.0
        
        if hex.hasPrefix("#") {
            
            let hex:String = hex.stringByReplacingOccurrencesOfString("#", withString: "")
            let scanner = NSScanner(string: hex)
            var hexval:CUnsignedLongLong = 0
            
            if scanner.scanHexLongLong(&hexval) {
                
                red = CGFloat((hexval & 0xFF0000) >> 16) / 255.0
                green = CGFloat((hexval & 0x00FF00) >> 8) / 255.0
                blue = CGFloat(hexval & 0x0000FF) / 255.0
                
                
            }else {
                print("scanner hatası")
            }
            
        }else {
            print("# isareti ile beraber kodu ekleyin!")
        }
        
        
        let color = UIColor(red: red, green: green, blue: blue, alpha: 1)
        
        return color
        
    }
    
}//end

 

Tarih:iOSSwift

Bu yazı yorumlara kapalı.

Copyright © 2020 Kenan Atmaca