我是 Obejctive C 的新手,所以如果这是一个简单的问题,请原谅我。我正在尝试使以下代码正常工作(来自 Facebook IOS 集成教程),但在线时出现错误
- (void) logoutButtonClicked:(id)sender {
[facebook logout];
我得到错误
“使用未声明的标识符” logoutButtonClicked。我知道这是说我正在实现一个未定义的方法。所以我的问题是,下面代码中定义的方法在哪里?
我在这里看到了一个解决方案,但它对我不起作用,这个错误仍然存在。我已经尝试过尝试修复的替代方法,但是请有人确认这段代码在做什么。
我的理解是,我们首先创建一个指向 UIButton 的指针(logoutButton),然后设置它的参数。然后,我们使用选择器为 UIControlEventTouchInside 方法定义操作消息 (LogoutButtonClicked)。
我不完全理解该方法是如何声明的,因为我认为这里的行是定义实例方法:
-(void) logoutButtonClicked:(id)sender {
[facebook logout];
或者是在声明的方法
[logoutButton addTarget:self action:@selector(logoutButtonClicked)
forControlEvents:UIControlEventTouchUpInside];
// Add the logout button
UIButton *logoutButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
logoutButton.frame = CGRectMake(40, 40, 200, 40);
[logoutButton setTitle:@"Log Out" forState:UIControlStateNormal];
[logoutButton addTarget:self action:@selector(logoutButtonClicked)
forControlEvents:UIControlEventTouchUpInside];
[self.viewController.view addSubview:logoutButton];
// Method that gets called when the logout button is pressed
- (void) logoutButtonClicked:(id)sender {
[facebook logout];
}
我真的很感谢有人在这方面的帮助,一直在努力理解这一点无济于事。
梅尔文