使用一个具有不同对象的IBOutlet

时间:2010-12-17 21:51:28

标签: iphone sdk

我想知道如何将ONE IBOutlet用于多个对象,例如我在一个视图上有IBOutlet UITextView *myText;然后3个UItextView,所以我想用myText连接所有这些对象!

4 个答案:

答案 0 :(得分:2)

您可以将一个NSArray声明为IBOutletCollection(而不是IBOutlet)。为了知道您从数组中获取的文本字段,您可以在IB中为每个文本字段设置一个标记,只需从数组中提取与特定标记匹配的文本字段。

答案 1 :(得分:1)

不要这么认为。一个视图中的每个UITextView都是UITextView类的单独实例。 myText变量一次只能指向一个实例的内存地址。

我不确定你要完成什么,但你可以通过让所有UITextView使用控制器作为其委托并在检测到更改时将它们的属性设置为彼此来“伪造”它。 (即每次控制器收到有关文本属性更改的消息时,它都会将所有UITextView对象的文本属性设置为等于更改的UITextView的文本属性)。

答案 2 :(得分:1)

您可以使用1个对象并使用不同的标记。

答案 3 :(得分:1)

这是不合适的。但是,将一个IBAction与多个IBOutlet挂钩是合适的。因此,当按下不同的按钮时,它们会转到相同的IBAction。 IBAction可以通过查看(id)发送者参数来判断触发的来源。