用Xcode在objective-c中实现一种方法
我目前正在关注苹果的“你的第一个iOS应用”教程。 不幸的是,我有一个问题 本教程为我提供了一些要添加的代码:用Xcode在objective-c中实现一种方法,objective-c,xcode,Objective C,Xcode,我目前正在关注苹果的“你的第一个iOS应用”教程。 不幸的是,我有一个问题 本教程为我提供了一些要添加的代码: - (IBAction)changeGreeting:(id)sender { self.userName = self.textField.text; NSString *nameString = self.userName; if ([nameString length] == 0) { nameString = @"World";
- (IBAction)changeGreeting:(id)sender {
self.userName = self.textField.text;
NSString *nameString = self.userName;
if ([nameString length] == 0) {
nameString = @"World";
}
NSString *greeting = [[NSString alloc] initWithFormat:@"Hello, %@!", nameString];
self.label.text = greeting;
}
xcode总是告诉我“…(id)sender”后面必须有分号
但构建应用程序既不能使用分号,也不能不使用分号。
我真的希望有人能帮我。谢谢。方法语法正确 在同一个文件中,您以前肯定有一些语法错误 如果您是在实现(
.m
)文件中编写此代码(否则就是问题所在),请检查.m
文件中的所有其他方法是否具有正确的语法
另外,如果您还在接口文件(.h
)中声明该方法,请检查其语法。它应具有与实施相同的签名
底线是您的代码应该是这样的:
不管怎样
不管怎样,m
您粘贴的代码似乎没有错误。请在.h.上显示您的方法声明,或在上面或下面的任何方法。可能是您缺少了结尾大括号。此应用程序位于开发者apple站点右侧。您确定错误在这一行吗?您可能有额外的偏执或额外的花括号如果您在
@interface/@end
中键入此文本,可能会发生这种情况-接口部分中不允许使用方法实现。哦,我必须是盲的。文档底部还有另一个更改问候语:(id)发件人。我用错了。谢谢大家的回答:)谢谢。我在@interface和@end之间编写代码,而不是在@implementation之间编写代码。你真的帮了我
@interface Whatever : NSObject
//... other stuff
- (IBAction)changeGreeting:(id)sender;
//... other stuff
@end
@implementation
//... other stuff
- (IBAction)changeGreeting:(id)sender {
self.userName = self.textField.text;
NSString *nameString = self.userName;
if ([nameString length] == 0) {
nameString = @"World";
}
NSString *greeting = [[NSString alloc] initWithFormat:@"Hello, %@!", nameString];
self.label.text = greeting;
}
//... other stuff
@end