我有一个名为contacts
的JSON数组,其中包含大约100个联系人
现在,我想通过在右侧字母表中显示每个字母的字母部分标题来复制contacts.app
的功能。
我尝试了几件事,但我想知道这样做最有效的方法是什么?
答案 0 :(得分:0)
您可以使用这两种方法
func tableView(_ tableView:UITableView,viewForHeaderInSection section:Int) - > UIView的? {
let sectionHeader = UIView(frame: CGRect(x: 0, y: 0, width: tableView.frame.size.width, height: 40))
let lblTitle:UILabel = UILabel(frame: CGRect(x: 20, y: 10, width: tableView.frame.size.width-20, height: 21))
var strTitle : String!
switch section {
case 0:
strTitle = "A"
break
case 1:
strTitle = "B"
break
case 2:
strTitle = "C"
break
default:
break
}
lblTitle.text = strTitle
sectionHeader.addSubview(lblTitle)
return sectionHeader
}
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 40
}
这里我在switch case语句中设置Alphabets以了解目的。您可以根据您的要求从Dictionary或Array或Json Response中获取此字母。
这是一般或有效的解决方案。我希望它会对你有所帮助。