Я создаю приложение, которое нужно обновить, потянув, а затем снова запустите ViewDidLoad. Так что я знаю, что могу использовать UIRefreshControl, но я могу найти код, который используется в UITableViewController. У кого-нибудь появилась идея о том, как использовать UIRefreshControl в UIView, а не в UITableView. Спасибо заранее.Xcode UIRefreshControl on UIView
ответ
UIRefreshControl
не предназначен для использования без стола. Эта нота the documentation специально предостерегает от такого использования:
Примечание: Поскольку контроль обновления разработан специально для использования в виде таблицы, которая управляется с помощью контроллера табличного, используя его в другой контекст может привести к в неопределенном поведении.
Так что, хотя возможно, что управление будет работать, вы действительно не должны использовать его без таблицы. Лучшее решение для вашего собственного контроля обновления.
Еще лучше попробуйте спроектировать ваше приложение таким образом, чтобы пользователю не нужно было обновлять представление. Приложение должно знать, когда доступны новые данные. Единственное оправдание для обновления пользователя - если это так автоматически будет каким-то образом запутать пользователя или иным образом сделать приложение более сложным в использовании.
Очень легко: Держите контроль как amember или свойства:
UIRefreshControl *_refreshControl;
Добавить это ваш метод viewDidLoad: (. Просто добавить элемент управления в Tableview убедитесь, что Tableview не ноль конечно).
_refreshControl = [[UIRefreshControl alloc] init];
[_refreshControl addTarget:self action:@selector(refresh:) forControlEvents:UIControlEventValueChanged];
[_tableView insertSubview:_refreshControl atIndex:0];
реализовать метод обновления:
- (void)refresh:(UIRefreshControl *)refreshControl {
[self reloadData];
//Don't forget to stop the refreshing animation after data reloads.
[_refreshControl endRefreshing];
}
попробовать это ...
[myView setNeedsDisplay];
это будет перезагрузить ваш контроллер представления. вы можете поместить это в метод и вызвать его во время pull для обновления ... Надеюсь, это вам поможет. Счастливое кодирование;)
- 1. UIRefreshControl on TableViewController subview UIView
- 2. UIRefreshControl и tableFooterView = UIView()
- 3. UIRefreshControl text overlays on refresh-indicator
- 4. Добавить скрытый UIView в UITableView, похожий на UIRefreshControl
- 5. xCode UIView с UITableView
- 6. Erazor effect on UIView
- 7. UIView on cell select
- 8. inputAccessoryView on UIView
- 9. Cocos2d runAction: on UIView
- 10. UIRefreshControl styling - Swift iOS7 +
- 11. UIRefreshControl flicker
- 12. UIRefreshControl неопределенно
- 13. UIRefreshControl отскок
- 14. UIRefreshControl weirdness
- 15. UIRefreshControl lagging
- 16. Наследование в UIView в Xcode
- 17. Присвоение UIButton UIView в Xcode
- 18. UIVIew Resizes on UIScrollView Scroll
- 19. Установить ViewController on UIView программно
- 20. UIButton on UIView внутри UIScrollView
- 21. UIView Hides on Keyboard Appear
- 22. doodle on UIView - разработка ios
- 23. Confused on UIView frame property
- 24. Анимация UIView on touchesEnded событие
- 25. CATransaction + UIView on iOS 3.2
- 26. Swift uiview on top of uitable
- 27. UIRefreshControl Auto Start
- 28. lldb on xcode vs lldb on standalone
- 29. Отмена UIRefreshControl при перетаскивании
- 30. Пользовательская анимация UIRefreshControl
«Приложение должно знать, когда доступны новые данные». О, действительно, спасибо за информацию об UIRefreshControl, но ваши редакционные комментарии ушли. Если это правда, то почему все главные приложения из Apple, и у меня есть контроль обновления, чтобы получить обновленные данные? Кроме того, я думаю, что большинство пользователей любят иметь этот контроль, чтобы обновлять свои данные. Я знаю, что знаю. – Harris
@ Харрис Возможно, просто разница в мнениях здесь, но в целом я думаю, что приложение, которое всегда обновляется без необходимости вмешательства пользователя, лучше, чем тот, где пользователь должен что-то сделать, чтобы получить данные, которые не являются устаревшими. icker app или приложение для погоды, где пользователь должен запрашивать последние данные? Это может быть не всегда желательно обновлять без явного действия пользователя, но это лучше, если это имеет смысл. Что касается приложений Apple: когда я создаю новый документ в Pages на моем Mac, он появляется более или менее мгновенно на моем iPad - обновление не требуется. – Caleb