2015-04-01 63 views
1

我試圖找到將這些邊框樣式應用於我的視圖控制器中的所有文本字段的最有效方法。將此樣式分別應用於所有文本字段似乎很瘋狂。有沒有簡單的方法來引用所有文本字段,或者我應該創建某種類型的樣式類?如何將樣式應用於Swift中的所有文本字段

textField.layer.cornerRadius = 8.0 
    textField.layer.borderColor = (UIColor .grayColor()).CGColor; 
    textField.layer.borderWidth = 1.0 

感謝您的幫助!

回答

6

由於Tron5000說,你可以使用擴展這樣的:

extension UITextField { 
    func setPreferences() { 
     self.layer.cornerRadius = 8 
     self.layer.borderColor = UIColor.grayColor().CGColor 
     self.layer.borderWidth = 2 
     // etc. 
    } 
} 

然後你就可以收集所有的文本框到一個數組,並在它們之間迭代:

var myTextFields = [UITextField]() 

func setColorsAndBorders() { 
    myTextFields = [tf1, tf2, tf3, tf4] // etc 

    for item in myTextFields { 
     item.setPreferences() 
    } 
} 
+0

完美,非常感謝喲,這就是我正在尋找的 – Cassandra 2015-04-03 21:31:29

+0

在這個例子中,該代碼如何知道「tf1」,「tf2」等是指什麼?你在哪裏設置標識符? – 2016-10-13 13:20:51

+0

這些只是可能的一些例子@IBOutlets ... – Prontto 2016-10-14 09:36:22

相關問題