将多个UITextField附加到一个iBOutlet

时间:2019-04-12 21:48:21

标签: uitextfield swift4 ios-simulator

我想将多个UITextFields链接到一个iBOutlet。我尝试了以下链接Multiple IBOutlets in same line of same type in Swift

的建议

但这无法正常工作,因为出现以下错误。

'weak' may only be applied to class and class-bound protocol types, not 
'Array<UITextField>'

 @IBOutlet weak var driverTextField: Array<UITextField>=[]

Simulator and code side by side.

基本上,我想将模拟器中的最后3个UITextfield连接到driverTextfield。

2 个答案:

答案 0 :(得分:1)

您有:

@IBOutlet weak var driverTextField: Array<UITextField>=[]

编译器正确地抱怨您不能对数组说weak。但是您需要一个数组才能进行出口收集。因此,只需删除weak,就可以了。

  

基本上,我想将模拟器中的最后3个UITextfield连接到driverTextfield

是的,一旦删除weak,您的代码将被编译,您将能够在Interface Builder(故事板)中对其进行配置。

答案 1 :(得分:0)

您可以改成“出口集合”。并使用和for和loop和index访问每个出口。 @IBOutlet var driverTextField: [UITextField]!

Select outlet collection from dropdown

从下拉列表中选择插座集合,然后将文本字段的所有插座拖放到该插座。