UITableView를 사용하는 프로젝트에서 UIRefreshControl의 기능을 추가했습니다. 응용 프로그램은 웹 서비스에서 테이블 뷰로 항목을 가져와 작동합니다. 그것은 어떤있을 경우 새 항목을 추가하여 새로 고침, 내가 새로 고침 당겨 경우 지금UITableView UIRefreshControl이 처음보기를 표시하지 않습니다.
- (void)viewDidLoad
{
[super viewDidLoad];
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
refreshControl.tintColor = [UIColor grayColor];
refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Updating New Entries"];
[refreshControl addTarget:self action:@selector(pullToRefresh) forControlEvents:UIControlEventValueChanged];
self.refreshControl = refreshControl;
[self pullToRefresh];
}
- (void) pullToRefresh
{
counter = 1;
[self fetchEntriesNew:counter]; // My code for updating table view
[self performSelector:@selector(updateTable) withObject:nil afterDelay:2];
}
- (void)updateTable
{
[self.tableView reloadData];
[self.refreshControl endRefreshing];
}
와 나에게있는 tableview의 상단에 다음과 같은보기를 보여줍니다 : 다음은 내가 UIRefreshControl을 추가하는 데 사용했던 코드입니다
을앱이 처음 실행되거나 열릴 때를 제외하고 모든 것이 잘 작동합니다. 위의 이미지에서 보여준 뷰는 표시되지 않지만 테이블 뷰는 새로 고침됩니다. 새로 고침 할 때마다 새로 고침 컨트롤보기를 표시하고 싶습니다. 누군가 내가 잘못하고있는 것을 지적 할 수 있습니까? 감사!
업데이트 : [self refreshControl beginRefreshing]이 (가) 추가되었으며 UIRefreshControl의 회 전자보기가 현재 표시되어 있지만 위의 첫 번째 항목은 tableview입니다. 누구든지 그것을 해결하는 방법을 지적 할 수 있습니까?
중복 가능성 [UIRefreshControl이 -있는 UITableViewController가 UINavigationController가 내부에있을 때 작동하지 beginRefreshing] (http://stackoverflow.com/questions/14718850/uirefreshcontrol-beginrefreshing-not-working-when-uitableviewcontroller-is-ins) – JosephH