Инициализация ObjectProperty<ObservableList <T >>?

У меня есть свойство, которое оборачивает ObservableList, Но я не могу понять, как его инициализировать. В настоящее время я делаю это так

ObjectProperty<ObservableList<T>> property = new ChoiceBox<T>().itemsProperty();

что явно плохая практика. Еще один был

ObjectProperty<ObservableList<T>> property = new SimpleObjectProperty<ObservableList<T>>();

но это требует дальнейшего внимания, которое я стараюсь избегать, чтобы инициализировать внутренний ObservableList с пустым списком.

Я ищу что-то вроде этого

ObjectProperty<ObservableList<T>> property = new SimpleObjectProperty<ObservableList<T>>(new ObservableList<T>());

1 ответ

Решение

Я рекомендую вам использовать ListProperty вместо ObjectProperty>

Для его инициализации сделайте:
ListProperty<Integer> listProperty = new SimpleListProperty<Integer>(FXCollections.<Integer>observableArrayList());

Для получения дополнительной информации вы можете прочитать эту статью ListProperty vs ObjectProperty

Другие вопросы по тегам