
[英]iOS: Autolayout and popOverController issue (possible Xcode bug)
[英]Possible compiler bug in Xcode?
情况如下:我创建了一个以UITextView作为其成员的自定义视图类。 发生某些事件后,我将textView作为第一响应者。
@inteface MyCustomView : UIView{
UITextView* textView;
}
- (void) doSomething;
@end
在程序执行期间,我向MyCustomView的实例发送[doSomething]消息。
[myCustomViewInstance doSomething];
发生的事情非常有趣,该程序由于抱怨UITextView:doSomething是无法识别的选择器而崩溃。
为什么程序在UITextView(其成员变量)而不是MyCustomView的实例上调用doSomething。
这里可能有什么问题? (当然,这是我所做工作的规范版本,但我不明白在任何逻辑错误情况下,除非在编译器级别发生问题,否则可能是正确的)
您认为我应该进一步调查什么?
首先,Objective-C没有“成员”变量,它有实例变量。 小事; 但是术语确实很重要。
其次,发生崩溃是因为myCustomViewInstance
指向UITextView
的实例而不是您的子类。 这可能是因为您无意间进行了这样的分配,或者可能是因为您有一个过释放问题,并且碰巧该变量最终巧合地指向了错误的对象。
最后,尽管肯定存在编译器错误,但是这种简单的代码不太可能会揭露迄今为止未知的编译器错误。 您使用的编译器与用于编译OS的无数行代码的代码完全相同。 这样简单的错误很可能意味着没有应用程序可以运行,或者很有可能设备甚至无法启动。
假设上述代码行实际上是崩溃的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.