1
是否有一種方法可以列出類中的所有元素,將它們存儲在Array中並設置它們的分組樣式屬性?例如,我想列出當前類中的所有文本UITextfields並設置邊框顏色,邊框寬度...我在下面找到了非常有用的代碼,但是您需要明確地附加數組中的每個元素。列出類的所有元素並將它們存儲在數組中以設置外觀屬性
// The extension code
extension UITextField {
func setPreferences() {
self.layer.cornerRadius = 5
self.layer.borderColor = UIColor.grayColor().CGColor
self.layer.borderWidth = 1
}
}
// The following code in the class
var theTextFields = [UITextField]()
func setColorsAndBorders() {
theTextFields = [tf1, tf2, tf3, tf4] // etc
for item in theTextFields {
item.setPreferences()
}
}
// And the following code in the ViewDidLoad
setColorsAndBorders()
感謝您的回答!你寫的代碼不適合我。可能是因爲我的UITextfields位於Container View控制器中。事實上,我的視圖控制器有一個容器視圖控制器,我在最後一個容器視圖控制器中加載視圖... – Fox5150
啊,是的,這將是原因。在這種情況下,您需要獲取對加載到最後一個容器視圖控制器的視圖的引用。這樣做的最好方法可能是創建一個'UIViewController'子類,並將Container View Controller的自定義類設置爲您的子類。然後您可以在該自定義類中執行此代碼。 – Mason
我剛剛添加了一種設置'UITextField'控件的替代方法,如果您正在以編程方式將'UITextField'控件添加到最後一個容器視圖控制器中,該控件就可以工作。 – Mason