[英]Hide section for UITableView on first load
我有一個UITableView
有2個部分(第一個用於過濾器,第二個用於數據)。
我想在加載視圖時隱藏第1部分。
只有當我滾動到頂部時,該部分才會出現。
我使用scrollToRowAtIndexPath:
測試scrollToRowAtIndexPath:
但結果不符合預期。
請幫忙。 謝謝。
您可以添加BOOL變量以確定它是否是第一次加載。 在viewDidLoad中將其設置為true,如:
- (void)viewDidLoad
{
[super viewDidLoad];
isFirstTimeLoading = YES;
}
然后在你的numberOfSectionsInTableView: delegate方法中,
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
// Return the number of sections.
if (isFirstTimeLoading) {
return 1;
} else {
return 2;
}
}
可以使用TableView滾動到頂部
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
在此方法中,檢查行是否為頂行。 如果是,則將isFirstTimeLoading設為NO並重新加載數據。 如果有必要,也不要忘記更改數據。
BOOL
變量以檢查是加載一個部分還是兩個部分。 YES
,這是UITableView第一次加載一個部分。 BOOL
變量設置為NO
- (void)viewDidLoad { [super viewDidLoad]; isFirstTime = YES; }
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{ if (isFirstTime) { return 1; } return 2; }
UITableView
以滾動TOP.We將使用UIScrollview
委托方法.UITableView是UIScrollview
的子類。 -(void)scrollViewDidScroll:(UITableView *)tableView{ CGFloat content_Offset = tableView.contentOffset.y; if (content_Offset >= 0 && isFirstTime){ //UITableview is scrolled to top isFirstTime = NO; [self.myTbaleView reloadData]; }else if (content_Offset<0) { //UITableview is draged down }
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.