Objective c 自定义函数中UI字段的未声明标识符
我使用从.m文件中的按钮单击事件复制的代码创建了一个如下所示的自定义函数。代码运行良好,直到我将其复制到displayDev函数中。这段代码的最后三行给出了一个“使用未声明的标识符”错误。有人能帮我弄清楚为什么fullVerseLabel.text、VerseField.text和解释字段.text都显示为未声明的标识符吗?下面是我声明这些UI字段的.h代码 如果您能提供任何帮助,我们将不胜感激。非常感谢Objective c 自定义函数中UI字段的未声明标识符,objective-c,undeclared-identifier,Objective C,Undeclared Identifier,我使用从.m文件中的按钮单击事件复制的代码创建了一个如下所示的自定义函数。代码运行良好,直到我将其复制到displayDev函数中。这段代码的最后三行给出了一个“使用未声明的标识符”错误。有人能帮我弄清楚为什么fullVerseLabel.text、VerseField.text和解释字段.text都显示为未声明的标识符吗?下面是我声明这些UI字段的.h代码 如果您能提供任何帮助,我们将不胜感激。非常感谢 void displayDev (NSInteger dayNum) { NSStri
void displayDev (NSInteger dayNum)
{ NSString *plistFile = [[NSBundle mainBundle] pathForResource:@"Property List" ofType:@"plist"];
NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:plistFile];
NSString *bookString = [[dict objectForKey:[NSString stringWithFormat:@"Day %d", dayNum]] objectForKey:@"Book"];
NSString *chapterString = [[dict objectForKey:[NSString stringWithFormat:@"Day %d", dayNum]] objectForKey:@"Chapter#"];
NSString *verseString = [[dict objectForKey:[NSString stringWithFormat:@"Day %d", dayNum]] objectForKey:@"Verse#"];
NSString *fullVerseString = [bookString stringByAppendingString:@" "];
fullVerseString = [fullVerseString stringByAppendingString:chapterString];
fullVerseString = [fullVerseString stringByAppendingString:@":"];
fullVerseString = [fullVerseString stringByAppendingString:verseString];
fullVerseLabel.text = fullVerseString;
VerseField.text = [dict objectForKey:[NSString stringWithFormat:@"Day %d", dayNum]objectForKey:@"Verse"];
InterpretationField.text = [dict objectForKey:[NSString stringWithFormat:@"Day %d", dayNum] objectForKey:@"Interpretation"];
currentlyViewing = dayNum;
}
我在我的.h文件中声明了变量,并链接到我的故事板
@interface FirstViewController : UIViewController
{ IBOutlet UILabel *fullVerseLabel;
IBOutlet UITextView *VerseField;
IBOutlet UITextView *InterpretationField;
IBOutlet UITextField *TextField;
}
此方法是从以下内容开始的:
void displayDev (NSInteger dayNum)
使用这种语法,实际上是将其声明为C函数,而不是Objective-C。您无法访问C函数中的Outlet或其他实例变量。通过将第一行更改为以下内容,可以将其更改为Objective-C实例方法:
- (void)displayDev:(NSInteger)dayNum
正是我需要的。非常感谢!