我正在玩一些UITableView編碼,並試圖隱藏默認的textLabel屬性。我使用了UIScrollViewDelegate協議,並使用-scrollViewDidScroll和scrollViewDidEndDecelerating方法來隱藏和顯示標籤。如何從所有UITableView行中隱藏默認UITableViewCell的textLabel屬性?
該代碼工作正常與表的第一行,而不是所有這些都是我想要的。這裏是我的代碼:
*編輯顯示解決方案代碼。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
cell = [self.tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
cell.textLabel.hidden = NO;
cell.textLabel.text = @"TEST";
return cell;
}
-(void)scrollViewDidScroll:(UIScrollView *)scrollView {
for (cell in [self.tableView visibleCells]) {
cell.textLabel.hidden = YES;
}
}
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {
for (cell in [self.tableView visibleCells]) {
cell.textLabel.hidden = NO;
}
}
所以任何人都可以幫我隱藏和顯示所有的行?
是的,我確實在全球範圍內聲明瞭小區。我解決了這個問題,並在本地聲明並修改了scrollView方法,但仍然無效。所有textLabel始終可見。 – 2014-10-04 06:33:47
嘿,我設法讓它只是修改窗體兩個scrollView方法[tableView visibleCells]到[self.tableView visibleCells]並添加cell.textLabel.hidden = NO;到cellForRowAtIndexPath和所有工作正常!謝謝!!! – 2014-10-04 06:39:15
Opps,這是我的錯誤,不把'self.'放在那裏;我在答案中修復了代碼。很高興你找到它並修復它:) – 2014-10-04 06:40:58