我正在http://www.raywenderlich.com/14172/how-to-parse-html-on-ios上学习教程。
这是我的detailviewcontroller.h文件。
#import <UIKit/UIKit.h>
@end <-- //errors shows up here.
@interface DetailViewController : UIViewController
@property (strong, nonatomic) id detailItem;
@property (weak, nonatomic) IBOutlet UILabel *detailDescriptionLabel;
@end
这是我的detailview.m文件
#import "DetailViewController.h"
@interface DetailViewController ()
- (void)configureView;
@end
@implementation DetailViewController
#pragma mark - Managing the detail item
- (void)setDetailItem:(id)newDetailItem
{
if (_detailItem != newDetailItem) {
_detailItem = newDetailItem;
// Update the view.
[self configureView];
}
}
- (void)configureView
{
// Update the user interface for the detail item.
if (self.detailItem) {
self.detailDescriptionLabel.text = [self.detailItem description];
}
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self configureView];
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.title = NSLocalizedString(@"Detail", @"Detail");
}
return self;
}
@end
正如我上面提到的,出现@end错误消息并等待自动修复红色方块,我同意进行自动修复。然后xCode在那里应用@end代码,如.h文件所示。然后出现另一个错误,标题为“@end必须出现在objective-c上下文中”
我该怎么办? xCode是疯了还是什么。
什么错了?
答案 0 :(得分:3)
在我的情况下,在某个地方的某个地方,我错过了一个.h文件中的@end。因此,导入该.h文件的所有文件都会提示此错误。有趣的是,我没有在错过@end的.h文件上收到此错误消息。所以我想你需要做一些搜索,确保你用@end关闭所有@interface,@ implementation或@protocol。希望有所帮助。
答案 1 :(得分:1)
首先删除第一个@end
。这是完全错误的。您只能在@end
,@implementation
或@interface
声明之后获得@protocol
。