簡體   English   中英

有一個按鈕來激發EGORefreshTableHeaderView

[英]Have a button to fire EGORefreshTableHeaderView

我使用EGOTableViewPullRefreshtableView獲得拉動刷新效果。 我添加了一個帶有(IBAction)refreshBtnClickeUIBarButtonItem ,它可以在EGORefreshTableHeaderView.h中調用自定義方法refreshByClickRegreshBtn:來顯示EGORefreshTableHeaderView並重新加載我的tableView

TableViewController.m

-(IBAction)refreshBtnClicked{

    [_refreshHeaderView refreshByClickRegreshBtn:self.tableView];

}

EGORefreshTableHeaderView.h

- (void)refreshByClickRegreshBtn:(UIScrollView *)scrollView{

[self setState:EGOOPullRefreshLoading];
NSLog(@"scrollView.contentInset.top :%f", scrollView.contentInset.top);// it's always 0 here
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.2];
[scrollView setContentInset:UIEdgeInsetsMake(60.0f, 0.0f, 0.0f, 0.0f)];

[UIView commitAnimations];
if ([_delegate respondsToSelector:@selector(egoRefreshTableHeaderDidTriggerRefresh:)]) {
    [_delegate egoRefreshTableHeaderDidTriggerRefresh:self];
}
}

問題 :當tableView沒有數據時, EGORefreshTableHeaderView后,將始終顯示UIBarButtonItem 但是,一旦下載的數據填充到tableView ,即使調用了refreshByClickRegreshBtn: UIBarButtonItem當我再次單擊UIBarButtonItem時, EGORefreshTableHeaderView將永遠不會出現。 任何幫助表示贊賞:)

通過將[scrollView setContentInset:UIEdgeInsetsMake(60.0f, 0.0f, 0.0f, 0.0f)] [scrollView setContentOffset:CGPointMake(0, -60)][scrollView setContentOffset:CGPointMake(0, -60)]可以解決問題。

- (void)refreshByClickRegreshBtn:(UIScrollView *)scrollView{

[self setState:EGOOPullRefreshLoading];
NSLog(@"scrollView.contentInset.top :%f", scrollView.contentInset.top);// it's always 0 here
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.2];
//[scrollView setContentInset:UIEdgeInsetsMake(60.0f, 0.0f, 0.0f, 0.0f)];
[scrollView setContentOffset:CGPointMake(0, -60)];

[UIView commitAnimations];
if ([_delegate respondsToSelector:@selector(egoRefreshTableHeaderDidTriggerRefresh:)]) {
    [_delegate egoRefreshTableHeaderDidTriggerRefresh:self];
}
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM