Примечание: на самом деле я хочу использовать пользовательский TableCell, я использовал TableCell только для тестирования
Это как раз та проблема. TableCell
в отличие от типа ячейки, созданного фабрикой ячеек по умолчанию, просто обновляет свойство empty
ячейки. Удаление этой инициализации или замена присвоения фабрики на
salutation.setCellFactory(TableColumn.DEFAULT_CELL_FACTORY);
будет показывать результат вызова toString
для элемента ячейки, как если бы это было cellFactory
:
salutation.setCellFactory((tableColumn)->new TableCell() {
@Override
protected void updateItem(Object item, boolean empty) {
super.updateItem(item, empty);
setText(item == null ? "" : item.toString());
}
});
Примечание: я рекомендую не использовать необработанный тип, но, не зная об используемых типах, я решил продолжать использовать необработанный тип в приведенном выше фрагменте.