Xcode 警告:“可能无法响应”
Posted
技术标签:
【中文标题】Xcode 警告:“可能无法响应”【英文标题】:Xcode warning: "May not respond to" 【发布时间】:2010-08-08 05:08:57 【问题描述】:我有一些方法可以在我的类实现中初始化不同的东西。但是,当我使用 [self 'methodName'] 调用这些方法时,Xcode 编译器会给出我无法摆脱的警告。
'className' 可能不会响应 'methodName'
例如,
警告:'NextJackpotViewController' 可能不会响应 -initActivityIndicator'
- (void)viewDidLoad
[self initActivityIndicator];
[self addRefreshButton];
[self updateUI];
[super viewDidLoad];
有什么办法可以摆脱这种情况?
【问题讨论】:
【参考方案1】:有 3 种方法可以做到这一点。第一个是像马特说的那样把方法声明放在你的头文件中。
第二种是通过创建私有方法,您可以通过将以下代码放在控制器顶部来做到这一点
@interface NextJackportViewController (PrivateMethods) - (void)initActivityIndicator; @end
第三种方法是在调用之前定义方法。
【讨论】:
请注意PrivateMethods
这个词不是关键字或任何特殊的东西,你可以很容易地用OtherStuff
替换它(不是说你应该)【参考方案2】:
确保方法在您的头文件中定义。在这种情况下:
// NextJackpotViewController.h
- (void)initActivityIndicator;
【讨论】:
或者您可以确保它是在同一文件中调用它的方法之前定义的(在您的 .m 文件中较高)。以上是关于Xcode 警告:“可能无法响应”的主要内容,如果未能解决你的问题,请参考以下文章
在方法中以编程方式移动控件警告“未找到方法”和“控件可能无法响应”
NSDictionary 可能无法响应 NSMutableDictionary 对象上的 setObject:forKey
iPhone - 无法识别的选择器,“可能无法响应 addTarget”
应用程序崩溃说集合表达式类型 UIView*' 可能无法响应 'countByEnumeratingWithState:object:count"'