Существует ли ИЗМЕНЯЕМЫЙ ListProperty в JavaFX?
Есть ли изменяемое ListProperty
в JavaFX? мне нужно ListProperty
supprting add()
а также remove()
методы, но я не мог найти один.SimpleListProperty
будет бросать UnsupportedOperationException
,
Все, что я нашел, это использовать инициализатор для установки содержимого, но это не то, что мне нужно. Мне нужно начать с пустого свойства и оттуда.
Я не могу поверить, что такого нет; Я должен быть слепым, так или иначе. Может кто-нибудь указать мне правильное направление, пожалуйста?
2 ответа
Оказывается ListProperty()
пустая обертка
Не инициализирует завернутый ObservableList<>
,
Это абсолютно нечисто из документации и UnsupportedOperationException
Брошенный вводит в заблуждение (должен быть NPE).
Конструктор по умолчанию бесполезен при обычном использовании, используйте что-то вроде:
ListProperty<String> xxx = new SimpleListProperty<>(FXCollections.observableArrayList());
ПРИМЕЧАНИЕ. Использование простого ObservableList
не работает для меня, потому что я использую Property
методы (например: getBean()
)
Список наблюдаемых - это тот, который вы ищете. У него есть методы добавления и удаления.
import javafx.collections.ObservableList;
ObservableList<String> list = FXCollections.observableArrayList();
list.add("Jaya");
list.add("Prasad");
list.add("test");
list.remove(list.indexOf("test"));