我有一个小型的iPhone应用程序,我已经创建了一个带有一些功能的按钮。我的问题是,如何在不实际按下它的情况下调用此按钮?
任何帮助将不胜感激!
由于
答案 0 :(得分:4)
如果要激活按钮所连接的目标,可以调用:
[button sendActionsForControlEvents:UIControlEventTouchUpInside];
(TouchUpInside是您通常将按钮操作连接到的事件)。这样,如果为任何按钮添加或更改其他目标(比如调试),则不必更改代码。
这个方法是UIBontrol继承的UIControl,这就是你乍一看可能忽略它的原因......
答案 1 :(得分:2)
让你的按钮事件调用一个函数。您也可以自己手动调用该功能。
示例:
- (void) btnFunction {
NSLog (@"test");
}
...
UIButton *btn1 = [UIButton buttonWithType:UIButtonRoundedRect];
// other code to set up button goes here
[btn1 addTarget:self action:@selector(btnFunction) forControlEvents:UIControlEventTouchUpInside];
您也可以自己调用该功能:
[self btnFunction];
答案 2 :(得分:1)
您的按钮不应具有功能,它应该只向目标发送消息(或调用方法,或调用函数......)。
您可以自由地将该消息发送给该目标。
e.g。按钮的目标插座连接到控制器上的IBAction。 IBAction只是一种形式的方法:
- (void) doSomething:(id)sender
在您自己的代码中执行:
[controller doSomething:self];
与按钮完全相同。