Переопределение метода анонимного класса в Java
Я хотел бы переопределить метод getSortableContainerPropertyIds, но я не знаю, как это сделать. В IndexedContainer есть метод getContainerPropertyIds, но я должен его повторно реализовать, потому что реализация по умолчанию не дает мне всего, что мне нужно.
IndexedContainer diagnosesContainer = new IndexedContainer()
{
@Override
public Collection<?> getSortableContainerPropertyIds() {
// Default implementation allows sorting only if the property
// type can be cast to Comparable
return getContainerPropertyIds();
}
};
1 ответ
Если вы хотите отключить сортировку для некоторых столбцов, вы можете переопределить метод, подобный следующему:
IndexedContainer diagnosesContainer = new IndexedContainer() {
@Override
public Collection<?> getSortableContainerPropertyIds() {
Collection<?> propertyIds = getContainerPropertyIds();
// Remove the ids that should not be sortable
propertyIds.remove("propertyId");
return propertyIds;
}
};
Принимая во внимание, что вы удаляете идентификаторы свойств столбцов, которые вы не хотите сортировать, и возвращаете только идентификаторы, которые должны быть отсортированы.