Потяните, чтобы обновить (ios)

Недавно я реализовал pull для обновления здесь: https://github.com/leah/PullToRefresh. Это похоже на работу, но она застряла с индикатором вращающейся активности. Их также нет текста справа от стрелки. Что я делаю не так? Благодарю!

Ответы

Ответ 1

Без кода, который мало кто может сказать, но, возможно, попробуйте выполнить другую реализацию Pull To Refresh, например, версия hyperego (EGO), код находится в github, здесь

Он используется в приложении Facebook, поэтому он определенно работает.

Ответ 2

Я новичок в разработке iOS, и я пытался реализовать pull для обновления в iOS 6. Ну, ища решение, я наткнулся на это сообщение в блоге и нашел, что это очень полезно, http://www.intertech.com/Blog/Post/iOS-6-Pull-to-Refresh-(UIRefreshControl).aspx. В нем излагаются шаги по внедрению pull для обновления таким образом, чтобы это было легко следовать. Любой, кто хочет сделать это самостоятельно в iOS 6, должен проверить блог.

UIRefreshControl можно использовать только с табличным представлением. Чтобы успешно добавить элемент управления обновлением, выполните несколько шагов:

1.  Создайте метод обратного вызова для обработки логики обновления. Метод обратного вызова следует вызывать, когда пользователь отключается в представлении таблицы. Сигнал метода должен принимать один параметр: указатель на UIRefreshControl.

Примечание. Шаги 2-4 выполняются в рамках метода ViewDeedLoad в контроллерах табличного представления.

2.  Выполните инициализацию UIRefreshControl с помощью базового "alloc/init".

3.  Подключите действие к элементу управления обновлением, чтобы вызвать метод обратного вызова при запуске события ValueChange.

4.  Добавьте элемент управления обновлением в свойство "refreshControl" контроллера табличного представления.

Ответ 3

Apple представила UIRefreshControl в iOS6. Вы можете интегрировать его в свой UITableViewController с помощью

- (void)viewDidLoad {
    [super viewDidLoad];
    // Initialize Refresh Control
    UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
    // Configure Refresh Control
    [refreshControl addTarget:self action:@selector(refresh:) forControlEvents:UIControlEventValueChanged];
    // Configure View Controller
    [self setRefreshControl:refreshControl];
}

метод refresh: вызовет обновление, и вы можете остановить его в обратном вызове API, используя:

 [(UIRefreshControl *)sender endRefreshing];

Ответ 4

Я предпочитаю реализацию EGO, нежели leah, потому что не требует подкласса вашего контроллера представлений. Исходный EGO в github - это бит беспорядка без файла .gitnore и много файлов .DS_Store, добавленных излишне. Посмотрите на некоторые из многих вилок и выберите один.

Вилка "emreberge" выглядит как хорошая версия, лучшая файловая организация и документация тоже!

https://github.com/emreberge/EGOTableViewPullRefresh

Ответ 5

Я нашел эту библиотеку очень полезной, причудливой и обновленной: https://github.com/Yalantis/Pull-to-Refresh.Rentals-iOS

(Рекомендации от других ответов кажутся старыми и не поддерживаются)

Ответ 6

Теперь, с более новыми версиями iOS, чем вышеупомянутый iOS 5, вы можете использовать: UIRefreshControl.

Существует действительно хороший учебник по созданию собственного пользовательского приложения для обновления для вашего приложения iOS: http://ios-blog.co.uk/tutorials/how-to-add-a-custom-pull-to-refresh-in-your-ios-application/

Ответ 7

Вы можете использовать: https://github.com/ngocbinh02/httablekit

Поддержка iOS 5.0 или новее

Потяните, чтобы обновить таблицу.

    import <HTTableKit/TableKit>

....

//like UIRefreshControll

[tableview setPullToRefreshControlType:UITableViewRefreshControlTypeSystem]; 

[tableview  setPullToRefreshModeEnable:YES beginHandler:^{

      // to do here when pulling to refresh
}];

Отвлечься, чтобы обновить таблицу.

    import <HTTableKit/TableKit>

....

[tableview  dismissPullToRefreshEndHandler:^{

      // to do here when dismissing     
}];

Ответ 8

Здесь наш учебник по настройкам Custom Pull-to-Refresh с кодом для Objective-C и Swift: http://www.jackrabbitmobile.com/design/ios-custom-pull-to-refresh-control/

Чтобы добавить дополнительный текст или изображения, как вы упомянули, добавьте их в self.refreshLoadingView в методах setupRefreshControl или scrollViewDidScroll (из учебника).

Сообщите мне, если это поможет!