我创建了一个显示数据库数据的TableView,现在我想在我的表中添加字母部分,我的数据库已按字母顺序排序。
我的问题:
1 - 我无法使Dictionary只访问数据库的第一列(名称列)。
2 - 我不知道如何获取姓名的第一个字母并存储名称中的每个项目。
如果你知道一种比使用词典更好的方法,我会接受任何建议。
我的代码:
class crimesTableViewController: UITableViewController {
var marrCrimesData : NSMutableArray!
@IBOutlet weak var crimesTableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewWillAppear(_ animated: Bool) {
self.getCrimesData()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func getCrimesData()
{
marrCrimesData = NSMutableArray()
marrCrimesData = ModelManager.getInstance().getAllCrimesData()
crimesTableView.reloadData()
}
// MARK: - Table view data source
override func numberOfSections(in tableView: UITableView) -> Int {
// #warning Incomplete implementation, return the number of sections
return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
return marrCrimesData.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell: crimesTableViewCell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! crimesTableViewCell
let crime: CrimesInfo = marrCrimesData.object(at: indexPath.row) as! CrimesInfo
cell.nameLabel.text = crime.Name
cell.detailLabel.text = crime.Detail
cell.timeLabel.text = crime.Time
return cell
}