将多个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>=[] “弱”只能应用于类和类绑定协议类型,而不是

我想将多个UITextFields链接到一个iBOutlet。我尝试了以下链接中的建议

但这不起作用,因为我得到了以下错误

'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
引用是
弱的
。这是惯例,但并非绝对必要。只需确保子视图没有对视图控制器的强引用。