Как запустить «scrollsToTop» после программного постукивания по строке состояния? - PullRequest
0 голосов
/ 29 февраля 2012

Я хочу запустить функцию scrollsToTop, которая запускается при программном нажатии на строку состояния, если пользователи нажимают на заголовок панели навигации.

На данный момент это мой метод., он не анимирует ScrollIndicators, как вы нажимаете на строку состояния, чтобы прокрутить вверх.

Любая помощь будет оценена, спасибо!

Ответы [ 3 ]

1 голос
/ 20 апреля 2012

Вы пытались использовать -setContentOffset:animated в сочетании с методами UIScrollViewDelegate - (void)scrollViewDidScrollToTop: и / или -(void)scrollViewDidEndScrollingAnimation:?

Возможно, вы сможете отправить свой -flashScrollIndicators в одном из них вместо того, чтобы полагаться натаймеры, т. е. с использованием -performSelector:withObject:afterDelay).

1 голос
/ 29 февраля 2012

Попробуйте что-то вроде

-(void)doScroll{
    void (^scroll)(void) = ^{
        [contentTableView setContentOffset:CGPointMake(0, 0) animated:NO];
        [contentTableView flashScrollIndicators];
    };

    [UIView animateWithDuration:0.5 animations:scroll];
}

- (void)viewDidLoad {
    [super viewDidLoad];
    [self performSelector:@selector(doScroll) withObject:nil afterDelay:1];
}
0 голосов
/ 19 апреля 2013

Попробуйте это в метке делегата ShouldStartLoadWithRequest веб-представления

    ((UIScrollView *)[[self.challengeWebView subviews] objectAtIndex:0]).scrollsToTop = NO;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...