Alphabetische Abschnitte in Tabelle anzeigen von swift

Ich habe eine Liste mit Namen alphabetisch sortiert werden, und jetzt will ich die Anzeige dieser Namen in einer Tabelle anzeigen. Ich habe Mühe mit der Gruppierung, die diese Namen für jeden Buchstaben.

Mein code sieht wie folgt aus:

let sections:Array<AnyObject> = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]
var usernames = [String]()

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{

    let cellID = "cell"

    let cell: UITableViewCell = self.tv.dequeueReusableCellWithIdentifier(cellID) as UITableViewCell

    cell.textLabel?.text = usernames[indexPath.row]

return cell
}

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int{

    return usernames.count
}
func numberOfSectionsInTableView(tableView: UITableView) -> Int{

    return 26
}


func sectionIndexTitlesForTableView(tableView: UITableView) -> [AnyObject]!{

    return self.sections
}

func tableView(tableView: UITableView,
    sectionForSectionIndexTitle title: String,
    atIndex index: Int) -> Int{

        return index
}

func tableView(tableView: UITableView,
    titleForHeaderInSection section: Int) -> String?{

        return self.sections[section] as? String
}

und es funktioniert alles ziemlich gut, außer für die Gruppierung die macht meiner Ansicht Tabelle am Ende wie dieses:

Alphabetische Abschnitte in Tabelle anzeigen von swift

So, ich weiß, Sie sollten in der Lage sein, um die Verwendung der gefilterten Funktion in ein Array, aber ich Verstand nicht, wie es zu implementieren.

Irgendwelche Vorschläge, wie es weitergehen würde geschätzt.

cell.textLabel?.text = usernames[indexPath.row] ist Ihre Quelle des Problems. Sie halten füllen Sie jeden Abschnitt mit exakt gleichen Daten.
Ja, ich muss nur filtern Sie die Benutzernamen array richtig:)
zwar gibt es einige versuche unter - ich fand das in objective-c, solide github.com/chrisladd/CGLAlphabetizer/blob/master/Example/...

InformationsquelleAutor martin | 2015-01-22

Schreibe einen Kommentar