製作一個可變數組以包含備用標題標籤 在
-(NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView
返回的陣列@」「,其中的引號之間的空間的數量決定了HI-的寬度點燃滾動。 讓「sectionIndexTitlesForTableView」調用更新標籤函數。 在該函數中,刪除先前從其超級視圖中創建的數組中的所有標籤然後創建並添加許多標籤。然後將它們添加到表格的超級視圖中。
這些是將標籤放置在正確位置所需的線。
rect.origin.x = table.frame.origin.x+table.frame.size.width-rect.size.width-2;
rect.origin.y = 5+table.frame.origin.y+counter *(280-rect.size.height-([customIndexLabels count]-1))/([customIndexLabels count]-1);
if ([customIndexLabels lastObject]==thisLabel)
{
rect.origin.y-=10;
}
希望有幫助。這並不完美我只是不在乎自己修復它 主要問題是最後一個標籤的間距不均勻。
上述迭代可以在該方法中實現: - (void)viewDidAppear:(BOOL)animated; 這將避免每次滾動tableView時重複迭代。 – 2011-08-02 19:58:36
這種方法只是改變了索引的背景顏色。如果我只想改變字體的顏色而不改變其背景,該怎麼辦? – 2011-10-20 06:40:03
@DDDhingani改變字體的顏色(在這個例子中爲紅色),使用:[view performSelector:@selector(setIndexColor :) withObject:[UIColor redColor]]; – rahzark 2013-09-26 14:42:12