制作一个可变数组以包含备用标题标签 在
-(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