从AppDelegate调用的方法中预期“]”

时间:2013-09-25 13:46:37

标签: ios objective-c

我正在尝试使用以下代码在AppDelegate类中调用方法。编译器显示“预期的”错误,无论我放入多少个字符。

我在这里做错了什么?

[[(MyAppDelegate *)[[UIApplication sharedApplication] delegate] authenticateUser(usernameField.text, passwordField.text)]];

1 个答案:

答案 0 :(得分:3)

主要问题是代码让app委托试图调用函数,而不是方法。

[[(MyAppDelegate *)[[UIApplication sharedApplication] delegate] authenticateUser(usernameField.text, passwordField.text)]];

重写(并删除额外的[]

MyAppDelegate *appDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate]

[appDelegate authenticateUser(usernameField.text, passwordField.text)];

我们看到,虽然appDelegate期望一个方法找到一个函数。

authenticateUser更改为方法 例如:

MyAppDelegate *appDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate]
[appDelegate authenticateUser:usernameField.text pass:passwordField.text];