我有一個UITiewController有一個UITableView作爲子視圖。我正試圖在桌面上添加一個拉到刷新。UIRefreshControl沒有UITableViewController沒有調用選擇器
下面的一些例子和討論,我發現here,我有UIRefresh顯示,但它從來沒有調用選擇器。我沒有收到有關拉動行動的通知。
我不能使用UITableViewController作爲我的主控制器,因爲我需要在屏幕底部添加一個固定按鈕。
我有這種感覺,我錯過了某些希望對別人顯而易見的事情。
@interface ActivityViewController()<UITableViewDelegate, UITableViewDataSource, UIScrollViewDelegate>
@end
- (void)viewDidLoad{
[super viewDidLoad];
_myTableView.delegate = self;
_myTableView.dataSource = self;
_tableViewController = [UITableViewController new];
_tableViewController.tableView = _myTableView;
[self addChildViewController:_tableViewController]; // Not sure this is necessary
_refreshControl = [UIRefreshControl new];
[_refreshControl addTarget:self action:@selector(loadMoreData) forControlEvents:UIControlEventValueChanged];
_tableViewController.refreshControl = _refreshControl;
}
- (void)loadMoreData{
NSLog(@"loadMoreData");
}
這沒有幫助,實際上,然後我UIRefreshController根本沒有顯示。我在原始文章中添加的鏈接有詳細的討論,解釋了爲什麼必須按照我的方式完成。只是我的選擇器被忽略.... – Alan
好吧,我改變了,但仍然是我的選擇器 - (void)loadMoreData不被調用。 – Alan
我不知道。也許試着讓你的refreshcontroller成爲一個實例變量,或者檢查它是否爲零,並且你不需要[self addChildViewController:_tableViewController];//不知道這是必要的 –