iOS - UITableView 的 UIRefreshControl 与 UITableViewController 的 UIRefreshControl
iOS - UITableView's UIRefreshControl vs. UITableViewController's UIRefreshControl
在我的 UIViewController
中,我有一个 UITableView
作为子视图之一。我使用以下代码添加 UIRefreshControl
:
// enable "pull to refresh"
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Pull To Refresh!" attributes:@{NSForegroundColorAttributeName : [UIColor whiteColor], NSFontAttributeName : [UIFont systemFontOfSize:17]}];
[refreshControl addTarget:self action:@selector(fetchArticles) forControlEvents:UIControlEventValueChanged];
refreshControl.backgroundColor = [UIColor colorWithRed:0.0f/255.0f green:102.0f/255.0f blue:153.0f/255.0f alpha:1.0];
refreshControl.tintColor = [UIColor whiteColor];
self.refreshControl = refreshControl;
[self.tableView addSubview:self.refreshControl];
我的应用程序中有另一个使用 UITableViewController
的屏幕,它的 UIRefreshControl
与我为 UITableView
添加的屏幕大不相同。
单独的 UITableView
的 UIRefreshControl
拖动时速度较慢,我通常不得不拖得更远才能让它开始刷新。
我的 UITableViewController
在我的另一个屏幕上的 UIRefreshControl
在拖动时速度更快,我不必拖那么远就可以开始刷新。
我更喜欢 UITableViewController
的 UIRefreshControl
更流畅的行为,那么如何让我的 UIRefreshControl
让我的 UITableView
表现得更像默认行为属于 UITableViewController
?
这可能吗?还是使用 UIContainerView
并使用 UITableViewController
我唯一的选择?
UIRefreshControl
旨在与 UITableViewController
一起使用;在 Apple 的网站上它说:
Because the refresh control is specifically designed for use in a table view that's managed by a table view controller, using it in a different context can result in undefined behavior.
也就是说,没有 UITableViewController
:UIRefreshControl without UITableViewController 的人也是成功的。使用风险自负。
在我的 UIViewController
中,我有一个 UITableView
作为子视图之一。我使用以下代码添加 UIRefreshControl
:
// enable "pull to refresh"
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Pull To Refresh!" attributes:@{NSForegroundColorAttributeName : [UIColor whiteColor], NSFontAttributeName : [UIFont systemFontOfSize:17]}];
[refreshControl addTarget:self action:@selector(fetchArticles) forControlEvents:UIControlEventValueChanged];
refreshControl.backgroundColor = [UIColor colorWithRed:0.0f/255.0f green:102.0f/255.0f blue:153.0f/255.0f alpha:1.0];
refreshControl.tintColor = [UIColor whiteColor];
self.refreshControl = refreshControl;
[self.tableView addSubview:self.refreshControl];
我的应用程序中有另一个使用 UITableViewController
的屏幕,它的 UIRefreshControl
与我为 UITableView
添加的屏幕大不相同。
单独的 UITableView
的 UIRefreshControl
拖动时速度较慢,我通常不得不拖得更远才能让它开始刷新。
我的 UITableViewController
在我的另一个屏幕上的 UIRefreshControl
在拖动时速度更快,我不必拖那么远就可以开始刷新。
我更喜欢 UITableViewController
的 UIRefreshControl
更流畅的行为,那么如何让我的 UIRefreshControl
让我的 UITableView
表现得更像默认行为属于 UITableViewController
?
这可能吗?还是使用 UIContainerView
并使用 UITableViewController
我唯一的选择?
UIRefreshControl
旨在与 UITableViewController
一起使用;在 Apple 的网站上它说:
Because the refresh control is specifically designed for use in a table view that's managed by a table view controller, using it in a different context can result in undefined behavior.
也就是说,没有 UITableViewController
:UIRefreshControl without UITableViewController 的人也是成功的。使用风险自负。