繁体   English   中英

iOS Swift - 使用UILocalizedIndexedCollat​​ion在TableView中显示联系人

[英]iOS Swift - Show Contacts in TableView using UILocalizedIndexedCollation

// MARK:UITableViewDelegate

override func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String {
    print("titleForHeaderInSection: \(collation.sectionTitles[section])")
    return collation.sectionTitles[section]
}

override func sectionIndexTitlesForTableView(tableView: UITableView) -> [String] {
    print("sectionIndexTitlesForTableView: \(collation.sectionIndexTitles)")
    return collation.sectionIndexTitles
}

override func tableView(tableView: UITableView, sectionForSectionIndexTitle title: String, atIndex index: Int) -> Int {
    print("sectionForSectionIndexTitle: \(sections.count)")
    return collation.sectionForSectionIndexTitleAtIndex(index)
}

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return (self.results.count > 0) ? self.results.count : 0
}

override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    let numberOfSections = UILocalizedIndexedCollation.currentCollation().sectionTitles.count
    print("numberOfSections: \(numberOfSections)")
    return numberOfSections
}

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell:UITableViewCell = tableView.dequeueReusableCellWithIdentifier("contactscell") as UITableViewCell!
    let label             =   cell.viewWithTag(1) as? UILabel
    label?.text           =   self.results[indexPath.row].givenName
    return cell
}

它显示每个部分中的所有联系人。 我想按字母顺序索引a到z按排序顺序显示联系人

无论你在哪个部分,你都会在numberOfRowsInSection中返回self.results.count。你必须返回每个字母的行数。 考虑使用字母作为键和联系人作为值的字典。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM