[英]No visible @interface declares the selector
I have a SSLYFoodDetailViewController.h
whose contents are 我有一个
SSLYFoodDetailViewController.h
其内容是
#import <UIKit/UIKit.h>
@interface SSLYFoodDetailViewController : UIViewController
@property(nonatomic, weak) NSString *foodItem;
@property(nonatomic, weak) NSString *restaurantName;
- (void) setFoodItem:(NSString *)foodItem;
- (void) setRestaurantName:(NSString *)restaurantName;
@end
In another file SSLYTableViewController.m
inside the prepareForSegue
method, I try to do the following - 在
prepareForSegue
方法内的另一个文件SSLYTableViewController.m
,我尝试执行以下操作-
SSLYFoodDetailViewController *sslyFoodDetailViewController = [segue destinationViewController];
[sslyFoodDetailViewController setFoodItem:@"Pasta"];
XCode is giving me an error that there is No visible @interface for 'SSLYFoodDetailViewController' declares the selector 'setFoodItem'
. XCode给我一个错误,即
No visible @interface for 'SSLYFoodDetailViewController' declares the selector 'setFoodItem'
。
At the top of the SSLYTableViewController.m
, I have the import statement - 在
SSLYTableViewController.m
的顶部,我具有import语句-
#import "SSLYFoodDetailViewController.h"
What is it that I am missing? 我想念的是什么?
That doesn't make any sense, except that setFoodItem:
is implied by the foodItem @property
declaration. 这并没有任何意义,除了
setFoodItem:
由foodItem暗示@property
声明。
Try removing the declarations for setFoodItem:
and setRestaurantName:
in your header - that definitely won't hurt anything because they're redundant. 尝试删除标头中
setFoodItem:
和setRestaurantName:
的声明-绝对不会造成任何伤害,因为它们是多余的。
If that doesn't work, try the property accessor notation: 如果这不起作用,请尝试使用属性访问器表示法:
sslyFoodDetailViewController.foodItem = @"Pasta";
Also of note, you're probably getting a warning on the line: 还要注意,您可能会在网上收到警告:
SSLYFoodDetailViewController *sslyFoodDetailViewController = [segue destinationViewController];
You should add an explicit cast in that line, as follows: 您应该在该行中添加一个显式强制转换,如下所示:
SSLYFoodDetailViewController *sslyFoodDetailViewController = (SSLYFoodDetailViewController *) [segue destinationViewController];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.