将多个UITextFields附加到一个iBOutlet
我想将多个UITextFields链接到一个iBOutlet。我尝试了以下链接中的建议 但这不起作用,因为我得到了以下错误将多个UITextFields附加到一个iBOutlet,uitextfield,swift4,ios-simulator,Uitextfield,Swift4,Ios Simulator,我想将多个UITextFields链接到一个iBOutlet。我尝试了以下链接中的建议 但这不起作用,因为我得到了以下错误 'weak' may only be applied to class and class-bound protocol types, not 'Array<UITextField>' @IBOutlet weak var driverTextField: Array<UITextField>=[] “弱”只能应用于类和类绑定协议类型,而不是
'weak' may only be applied to class and class-bound protocol types, not
'Array<UITextField>'
@IBOutlet weak var driverTextField: Array<UITextField>=[]
“弱”只能应用于类和类绑定协议类型,而不是
“数组”
@IBOutlet弱var driverTextField:Array=[]
基本上,我想将模拟器中最后3个UITextfields连接到driverTextfield。您有:
@IBOutlet weak var driverTextField: Array<UITextField>=[]
@IBOutlet弱var driverTextField:Array=[]
编译器正确地抱怨说,不能用数组说弱
。但是您需要一个数组来创建outlet集合。所以只要删除弱的,你就会没事的
基本上,我想将模拟器中最后3个UITextfields连接到driverTextfield
是的,一旦你删除了weak
,你的代码将被编译,你可以在界面生成器(故事板)中配置它。你可以制作一个“outlet collection”。并使用和访问每个插座,用于环路和索引。
@IBOutlet var driverTextField:[UITextField]代码>
从下拉列表中选择outlet集合,并将textfields的所有outlet拖放到此outlet。删除“弱”不会影响或导致内存泄漏吗?@Sanju不会。没有法律要求IBOutlet
引用是弱的
。这是惯例,但并非绝对必要。只需确保子视图没有对视图控制器的强引用。