SendDelegateMessage zurückgegeben werden konnte nach einer Wartezeit von 10 Sekunden

Habe ich nur Hinzugefügt, eine sehr einfache UIWebView-basiertes embedded-browser in unsere app. Dies lädt und navigiert Seiten in Ordnung, aber sobald ich das Gerät drehen, die gesamte Benutzeroberfläche reagiert nicht mehr. Es ist jedoch immer noch läuft und ich kann pausieren der app, und drucken Sie einen backtrace:

(gdb) bt
#0  0x00f35bd4 in -[CALayer addAnimation:forKey:] ()
#1  0x00f283e3 in endChange ()
#2  0x00f2a535 in CALayerSetBounds ()
#3  0x00f2a2b6 in -[CALayer setBounds:] ()
#4  0x00573307 in -[UIView(Geometry) setFrame:] ()
#5  0x006c1a3a in -[UIWebDocumentView setFrame:] ()
#6  0x008aad59 in -[UIWebBrowserView setFrame:] ()
#7  0x006c1277 in -[UIWebDocumentView _updateSize] ()
#8  0x002a76c1 in _nsnote_callback ()
#9  0x019d4f99 in __CFXNotificationPost_old ()
#10 0x0195433a in _CFXNotificationPostNotification ()
#11 0x0029d266 in -[NSNotificationCenter postNotificationName:object:userInfo:] ()
#12 0x0196d67d in __invoking___ ()
#13 0x0196d551 in -[NSInvocation invoke] ()
#14 0x027db82a in SendDelegateMessage ()
#15 0x027ba138 in WKViewSetBoundsSize ()
#16 0x02825628 in WebCore::ScrollView::platformSetContentsSize ()
#17 0x0282552b in WebCore::ScrollView::setContentsSize ()
#18 0x027d8ccc in WebCore::FrameView::setContentsSize ()
#19 0x027e8b27 in WebCore::FrameView::adjustViewSize ()
#20 0x027c68a4 in WebCore::FrameView::layout ()
#21 0x027dd1e0 in WebCore::Document::updateLayout ()
#22 0x027dd0fe in WebCore::Document::updateLayoutIgnorePendingStylesheets ()
#23 0x0285bc7b in WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue ()
#24 0x0285a768 in WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue ()
#25 0x02910963 in WebCore::CSSStyleDeclaration::getPropertyCSSValue ()
#26 0x0291017b in WebCore::JSCSSStyleDeclaration::nameGetter ()
#27 0x02053d1f in JSC::JSValue::get ()

Ich manchmal, aber nicht immer, auch diese in die Konsole ein:

void SendDelegateMessage(NSInvocation*): delegate (<CFNotificationCenter 0x5e199c0 [0x1a6a3e0]>) failed to return after waiting 10 seconds. main run loop mode: kCFRunLoopDefaultMode

- Und dies ist die WebViewController Umsetzung:

- (void)viewDidLoad {
    [super viewDidLoad];

    backButton.enabled = NO;
    forwardButton.enabled = NO;

    pageTitle.title = [self.url absoluteString];
    [webView loadRequest:[NSURLRequest requestWithURL:self.url]];
}

#pragma mark -
#pragma mark UI Actions

-(IBAction)doneButtonPressed:(id)sender {
    [self dismissModalViewControllerAnimated:YES];
}

#pragma mark -
#pragma mark UIWebViewDelegate

- (void)webViewDidStartLoad:(UIWebView *)aWebView {
    [activityIndicator startAnimating];
    backButton.enabled = webView.canGoBack;
    forwardButton.enabled = webView.canGoForward;
}
- (void)webViewDidFinishLoad:(UIWebView *)aWebView {
    [activityIndicator stopAnimating];
    backButton.enabled = webView.canGoBack;
    forwardButton.enabled = webView.canGoForward;
    pageTitle.title = [webView stringByEvaluatingJavaScriptFromString:@"document.title"];
}

Könnte jemand alle vergossen Licht auf das?

  • Dies scheint nur geschehen, in den simulator und das Gerät funktioniert ok. Obwohl sehr ärgerlich, ich kann es umgehen.
  • Verstehe ich nicht deine Frage
  • Hey Ray! Sind Sie laden die UIWebView in einem modalen view?
  • wenn dies geschieht nur in den simulator, es könnte eine gute Idee sein, Datei ein radar gegen das problem eventuell mit einer Beispiel-app, wenn Sie mit oben kommen kann eine.
InformationsquelleAutor rayh | 2011-01-11
Schreibe einen Kommentar