Добавьте UIRfreshControl под UITableView

Есть ли способ добавить UIRfreshControl под UITableView? Я создал предварительный просмотр того, чего хочу достичь.


person Dimitris Bouzikas    schedule 30.12.2013    source источник
comment
Здесь уже есть хороший пост stackoverflow.com/questions/14942460/   -  person Retro    schedule 30.12.2013


Ответы (1)


Они не дадут элементы управления UIRfresh, но вы можете добавить их внизу экрана.

Объявите ниже в шапке

  UIActivityIndicatorView                             *spinner;

Инициализируйте то же самое в ViewDidLoad в своей реализации

spinner = [[[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray] autorelease];
    [spinner stopAnimating];
    spinner.hidesWhenStopped = NO;
    spinner.frame = CGRectMake(0, 0, 320, 44);
    self.tableviewName.tableFooterView = spinner;

Добавьте их, и он будет вызываться при прокрутке таблицы.

- (void)scrollViewDidEndDragging:(UIScrollView *)aScrollView
                  willDecelerate:(BOOL)decelerate{

    CGPoint offset = aScrollView.contentOffset;
    CGRect bounds = aScrollView.bounds;
    CGSize size = aScrollView.contentSize;
    UIEdgeInsets inset = aScrollView.contentInset;
    float y = offset.y + bounds.size.height - inset.bottom;
    float h = size.height;

    float reload_distance = 50;
    if(y > h + reload_distance) {
        NSLog(@"load more data");
        [spinner startAnimating];
    }
}

Надеюсь, это поможет вам!

person iDeveloper    schedule 30.12.2013
comment
хорошее решение! Я использую это с небольшими изменениями: [spinner startAnimating]; spinner.hidesWhenStopped = ДА; И я определяю, действительно ли я нахожусь в конце представления таблицы, и там [spinner stopAnimating]; - person incmiko; 23.02.2014
comment
решение хорошее, но у меня есть один запрос после скрытия таблицы индикаторов активности, которая не прокручивается вниз. Пожалуйста, дайте мне знать, если у вас есть решение и для этого. - person Alok; 18.06.2015