UITableView SectionIndexTitle自定义视图

时间:2016-03-29 00:06:37

标签: ios objective-c swift uitableview

我已经用谷歌搜索了我的问题大约2天了。但我找不到任何与我的问题相符的解决方案。我的问题是我想为UITableView制作一个自定义的SectionIndexTitle,如下图所示。请推荐我任何图书馆或概念。谢谢。enter image description here

1 个答案:

答案 0 :(得分:0)

如果您正在尝试创建字母索引,UITableViewDelegate中的方法可以直接支持它。

您需要定义部分,然后使用UILocalized Indexed Collat​​ion对其进行索引。

 let collation = UILocalizedIndexedCollation.currentCollation()
    as UILocalizedIndexedCollation

// table sections
var sections: [Section] {
    if self._sections != nil {
        return self._sections!
    }

    // create objects from your datasource
    var objects: [Object] = names.map { objectAttribute in
        var object = Object(objectAttribute: objectAttribute)
        object.section = self.collation.sectionForObject(object, collationStringSelector: objectAttribute)
        return object
    }

    // create empty sections
    var sections = [Section]()
    for i in 0..<self.collation.sectionIndexTitles.count {
        sections.append(Section())
    }

override func sectionIndexTitlesForTableView(tableView: UITableView)
    -> [AnyObject] {
    return self.collation.sectionIndexTitles
}

override func tableView(tableView: UITableView,
    sectionForSectionIndexTitle title: String,
    atIndex index: Int)
    -> Int {
    return self.collation.sectionForSectionIndexTitleAtIndex(index)
}

详细了解UILocalized​Indexed​Collation