我有一个简单的应用程序,我想加载UI元素的初始设置。但我不想对每个人都有IBOutlet。有没有办法以编程方式解决它们并设置它们的值。例如:
if (user hasn't created a default){
// load the default settings
button1 = 12;
label.text = text;
etc...
}
答案 0 :(得分:3)
IBOutlet
的全部目的是让您可以以编程方式设置和获取其值,因此我不太明白为什么不使用IBOutlet
。通常,当您在Interface Builder中创建时,您可以使用IBOutlets进行以编程方式进行交互所需的任何操作。 (显然,以编程方式创建它们时,您不需要IBOutlet。)
但是,如果确实想要在Interface Builder中添加控件而不使用IBOutlets,则可以在“视图”下的属性检查器中将数字tag
属性设置为一些唯一值“设置。然后,您可以以编程方式从视图控制器中为[self.view viewWithTag:tagNumber];
检索该引用。这更尴尬,效率更低,所以我真的鼓励你使用IBOutlet
。是否有一些令人信服的理由不?
答案 1 :(得分:2)
对于UIButtons是
[button addTarget:self action:@selector(signatureOfYourMethod) forControlEvents:UIControlEventTouchUpInside];