我有一个本地属性,它是NIB中WebView的IBOutlet。 对于一个用户来说,一个真正非常重要的用户,我可能会说它已经崩溃了但是有 没有找到任何其他用户同样崩溃。
我回来的堆栈跟踪:
Application Specific Information:
abort() called
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSView setDrawsBackground:]: unrecognized selector sent to instance 0x101849380'
*** Call stack at first throw:
(
0 CoreFoundation 0x00007fff883097b4 __exceptionPreprocess + 180
1 libobjc.A.dylib 0x00007fff8859f0f3 objc_exception_throw + 45
2 CoreFoundation 0x00007fff88363110 +[NSObject(NSObject) doesNotRecognizeSelector:] + 0
3 CoreFoundation 0x00007fff882db91f ___forwarding___ + 751
4 CoreFoundation 0x00007fff882d7a68 _CF_forwarding_prep_0 + 232
5 NZBVortex 0x00000001000521d8 -[SearchResultViewController awakeFromNib] + 55
来自ViewController的代码,其中包含WebKit WebView:
-(void)awakeFromNib {
[self.descriptionView setDrawsBackground:NO];
[[[self.descriptionView mainFrame] frameView] setAllowsScrolling:NO];
...
}
我不知道如何解决这个问题,因为我无法在本地重现。 它只是一个View我使用setDrawsBackground。
我应该等待WebViewDelegate方法被触发吗?
答案 0 :(得分:0)
在加载窗口后设置。如果您在更新webview时尝试更改它,可能会导致问题。
答案 1 :(得分:0)
您知道他们使用的操作系统版本吗?文档说只有OS X v10.4.11及更高版本支持WebView上的setDrawsBackground:
方法。
答案 2 :(得分:0)
这太愚蠢了。在阅读webkit框架之后 它再次起作用。它似乎是Xcode版本之间的转换,它刚刚破产。 这导致在webkit视图应该是(默认)的地方加载了正常的nsview