在实现文件中调用action方法

时间:2015-12-05 14:24:13

标签: ios objective-c action

我在实现文件中有一个action方法,用于响应用户操作。我现在想用另一种方法调用它,但语法有问题:

我如何从另一种方法中调用它?

-(IBAction)login:(id)sender { //open method

[self login]; gives no visible interface error

3 个答案:

答案 0 :(得分:1)

因为此方法有一个参数sender:

[self login:nil];

应该可以正常工作。

答案 1 :(得分:0)

因为发件人是自己的,[自我发件人:自己]:结果发挥了作用。

答案 2 :(得分:0)

我非常强烈地倾向于而不是来做这件事。

我首先没有名为“login”的IBAction。我有一个名为“loginButtonPressed:”的IBAction,它可以调用名为login的方法。我可能还有其他代码也调用方法登录。

例如,应保留IBAction以处理用户按下按钮的情况。它是处理按钮的纯用户界面。它不应该像登录一样执行,只调用一个在需要时执行它的方法。 IBAction会假设发件人是按下的按钮。您的loginButtonPressed:IBAction可能会更改按下的按钮的名称。如果您从其他地方呼叫登录,则该按钮可能不会受到影响,因此您不应该调用IBAction而是单独的代码。