JavaFX TableView sortiert lassen


jimb0p

Erfahrenes Mitglied
Hallo Zusammen,

ich habe einen TableView und wenn ich Zeilen darin ausblenden lassen möchte, durchlaufe ich die Liste und schmeiße Zeilen mit bestimmten Kriterien raus. Deaktiviere ich dieses Filtern wieder setze ich zurück auf die ursprüngliche Liste, die ich gebackupt habe. Nun verschwindet nach dem .setItems aber die Sortierung die der Benutzer bspw. auf der Spalte Timestamp gesetzt hat um die Einträge nach Zeit zu sortieren. Das bedeutet die Liste ist zwar noch so sortiert, aber die Sortierung ist im TableView nicht aktiv und ich muss doppelt klicken, damit ich wieder anders herum sortieren kann. (Ein ganz schönes Textdurcheinander ich hoffe man kann es verstehen ;-) ) Hier mein Code:

Java:
public void filterMissedWinner(Boolean newStat) {
        if (newStat) {
            tableUser.setItems(FXCollections.observableArrayList(backUpSortedList));
        }else {
            backUpSortedList = new ArrayList<User>(tableUser.getItems());
            for (int i = 0; i < tableUser.getItems().size(); i++) {
                if (tableUser.getItems().get(i).getIsMissedWinner().get()) {
                    tableUser.getItems().remove(i);
                    i--;
                }
            }
        }
    }
Quasi möchte ich einfach bevor ich die Liste bearbeite mir irgendwie merken wonach sortiert wird und das anschließend wieder aktivieren.

Gruß!