Es sieht aus wie ein Problem, das eine einfache Lösung haben könnte, aber ich habe nichts gefunden, was den Weg dorthin führen könnte. Ich benutze UIWebView innerhalb von UIScrollView und tippen auf statusBar (um Inhalt nach oben scrollen) funktioniert nicht.UIScrollView + UIWebView = Nein scrollsToTop
Ich habe einfache Testanwendung gemacht, um zu sehen, ob es wirklich UIWebViews Fehler ist. Und das ist es wirklich.
// scrolls to top on status bar tap
UIScrollView *sv = [[UIScrollView alloc] init];
sv.frame = CGRectMake(0, 0, 320, 480);
sv.contentSize = CGSizeMake(320, 1200);
[self.view addSubview:sv];
// doesn't scroll
UIScrollView *sv = [[UIScrollView alloc] init];
sv.frame = CGRectMake(0, 0, 320, 480);
sv.contentSize = CGSizeMake(320, 1200);
UIWebView *wv = [[UIWebView alloc] init];
wv.frame = CGRectMake(0, 0, 320, 100);
[sv addSubview:wv];
[self.view addSubview:sv];
Also, ich denke, vielleicht gibt es etwas, das ich deaktivieren könnte UIWebView nicht zu verwirren mit scrollToTop zu machen? Oder eine Art Workaround wäre auch nett.
Irgendwelche Ideen?
Dank nivekastoreth, das war nervig mich. Ich möchte nur darauf hinweisen, dass Sie eine '(' in secureScrollsToTop fehlt und ich möchte jemand anderen daran erinnern, der dies findet, um den Delegaten der Webansicht zu setzen, so dass webViewDidFinishLoad aufgerufen wird. –
dies funktioniert, aber Sie wahrscheinlich gemeint: ((UIScrollView *) [[webview subviews] objectAtIndex: 0]). ScrollsToTop = YES; –
Meine Erinnerung daran ist im Moment etwas unscharf, aber das Problem ist, dass Sie scrollsToTop auf NO setzen müssen, weil das Problem Wenn mehrere Scroll-Ansichten YES zurückgeben (wenn sie sich durch untergeordnete Elemente ketten), wird diese Funktionalität tatsächlich deaktiviert.Es ist nur möglich, wenn nur eine Scroll-Ansicht YES zurückgibt. – nivekastoreth