UIWebview scrollsToTop не работает, когда UIScrollview присутствует как подпредставление - PullRequest
0 голосов
/ 08 января 2012

У меня проблема с setScrollsToTop: в UIWebView. веб-представление является подпредставлением контроллера корневого представления и на viewDidLoad я установил:

[self.webView.scrollView setScrollsToTop:YES];

Однако, когда я затем коснусь строки состояния, веб-просмотр не будет прокручиваться вверх. На другом модальном tableViewController внутри приложения он работает нормально, даже не устанавливая setScrollsToTop:YES. Это код в applicationDidFinishLaunching внутри делегата приложения:

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.f = [[FirstViewController alloc] initWithNibName:@"FirstViewController" bundle:nil];
self.window.rootViewController = self.f;
[self.window makeKeyAndVisible];
return YES;

Как я могу заставить это работать?

РЕДАКТИРОВАТЬ: кажется, что UIScrollview, который находится в том же представлении, вызывает проблему. Как я могу заставить его работать с UIScrollView?

Ответы [ 3 ]

2 голосов
/ 14 февраля 2012

Попробуйте установить setScrollsToTop:NO в UIScrollView.

В соответствии с документами в setScrollsToTop: в UIScrollView ,

Этот жест работает с одним видимымпросмотр с прокруткой;если есть несколько представлений прокрутки (например, средство выбора даты) с этим установленным свойством, или если делегат возвращает NO в scrollViewShouldScrollToTop :, UIScrollView игнорирует запрос.

0 голосов
/ 12 июля 2015

Может быть, этот код решит вашу проблему, если я ее получу.

self.automaticallyAdjustsScrollViewInsets = NO;

CGSize containerSize = self.view.frame.size;
self.webView.frame = CGRectMake(0, 64, containerSize.wdith, containerSize.height - 65);

Иногда self.automaticsAdjestsScrollViewInsets не работает как обычно. Так что, просто выключи его.

0 голосов
/ 05 июня 2012

используйте ответ здесь: UIScrollView + UIWebView = NO scrollsToTop

работал для меня как чудо.

У меня был UIScrollView со встроенным UIWebView.

...