我正在尝试按照 Apple 的“iOS 的文本、Web 和编辑编程指南”中的步骤来移动位于键盘下的内容(PDF 打印输出的第 36 页),并且代码中不断出现错误我直接从页面(清单 4-1)中复制了这个片段,该页面包含在 keyboardDidShow:() 下的这个片段:
if (!CGRectContainsPoint(aRect, activeField.frame.origin)){
CGPoint scrollPoint = CGPointMake(0.0, activeField.frame.origin.y-kbSize.height);
[scrollView setContentOffset:scrollPoint animated:YES];
}
然后清单 4-2:
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
activeField = textField;
}
(我确实有通知并经过测试可以正常工作。)
问题是 Xcode 将术语 activeField 标记为未声明的标识符。显然,这意味着我需要在某个地方声明它,但是尽管我已经做了很多挖掘,但我无法弄清楚在哪里声明它以及如何声明它。
我在其他地方看到人们使用相同的代码并且没有问题。为什么是我???
对于你们 Xcode 的老手来说,这可能没什么大不了的,所以我希望你们能教育我。
谢谢!