UITableView, UIWebViews и scrollsToTop Свойство = Проблема

Мое приложение имеет a UITableView. Тот UITableView имеет представление заголовка, которое является a UIWebView.

По умолчанию прокрутите представления, имеют их scrollsToTop набор свойств к YES, который позволит пользователю коснуться строки состояния для прокрутки к вершине представления прокрутки.

Когда существует два представления прокрутки, встроенные в одно представление, это у обоих есть их scrollsToTop набор свойств к YES, ответвление строки состояния ничего не делает.

Решение состоит в том, чтобы установить один из scrollsToTop свойства к NO. Это повторно позволяет коснуться строки состояния.

Теперь вот проблема: UIWebView не выставляет, это - представление прокрутки, и в результате нет никакого доступа к, он scrollsToTop свойство. Я только хочу, чтобы табличное представление прокрутило к вершине, когда строка состояния касается, не веб-представление.

Кто-либо знает, как я могу достигнуть этого?

6
задан Jasarien 23 April 2010 в 08:44
поделиться

2 ответа

Вы пробовали использовать метод делегирования из UIScrollViewDelegate scrollViewShouldScrollToTop ?

0
ответ дан 16 December 2019 в 21:36
поделиться

Этот вопрос содержит ответ:

iPhone OS: коснитесь строки состояния, чтобы прокрутить вверх, не работает после удаления / добавления обратно

I не мог найти его ранее, так как его спрашивали по-другому и по немного другой теме, но результат тот же.

Итак, в результате мы прошли по вложенным представлениям, пока не нашли представление прокрутки. Я делал это раньше в других приложениях и не думал об этом в данном случае. Он должен быть безопасным для App Store, поскольку у меня есть приложения в магазине, которые используют эту идею.

Категория в UIWebView для включения или отключения прокрутки вверх:

@implementation UIWebView (UIWebViewScrollToTopAdditions)

- (void)setScrollsToTop:(BOOL)scrollsToTop
{
    if ([[self subviews] count] > 0)
    {
        UIScrollView *scrollView = (UIScrollView *)[[self subviews] objectAtIndex:0];
        if ([scrollView respondsToSelector:@selector(setScrollsToTop:)])
        {
            [scrollView setScrollsToTop:scrollsToTop];
        }
    }
}

@end
3
ответ дан 16 December 2019 в 21:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: