我正在使用UIRefreshControl
下拉刷新iOS 6,它正在运行。我正在使用自定义委托进行更新,在我调用的方法中,
[self->refresh endRefreshing];
我宣布了,
UIRefreshControl *refresh;
接口文件中的,因为我无法调用
[self->refresh endRefreshing]
来自自定义委托方法。
它完全适用于iOS 6,但在较低版本的iOS上,它失败了,因为`UIRefreshControl'仅适用于iOS 6及更高版本。
我如何有条件地声明它们以便它在iOS6及以下版本中都能正常工作?
答案 0 :(得分:2)
id
。UIRefreshControl *
。if (NSClassFromString(@"UIRefreshControl") != Nil) { ... }
确保UIRefreshControl
可用。答案 1 :(得分:2)
或者使用[[UIDevice currentDevice] systemVersion]
自定义提取来刷新,例如:https://github.com/leah/PullToRefresh
答案 2 :(得分:1)
https://github.com/instructure/CKRefreshControl是UIRefreshControl的替代品,它在iOS6 +上使用UIRefreshControl,在以前的版本上使用自定义的pull-to-refresh逻辑。我与它的开发没有任何关系,但效果很好!