ReactFX: не удается собрать EventStream из DoubleProperty

Я пытаюсь сделать EventStream из DoubleProperty в ReactFX (я пробовал 2.0M5 и 1.4.1 стабильной). Я постоянно получаю эту ошибку от IntelliJ:

Ошибка несовместимого типа

Я попытался использовать пример кода из вики:

Circle streamCircle = new Circle();
EventStream<Double> widthValues = EventStreams.nonNullValuesOf(streamCircle.radiusProperty());

... и я получаю ту же ошибку.

Что я делаю неправильно?

1 ответ

Решение

DoubleProperty, IntegerProperty и аналогичные свойства реализуют ObservableValue<Number>не ObservableValue<Double>, ObservableValue<Integer>и т. д.

Вы могли бы использовать asObject для преобразования в такой тип:

EventStream<Double> widthValues = EventStreams.nonNullValuesOf(streamCircle.radiusProperty().asObject());

Но если я правильно понимаю, что nonNullValuesOf должен сделать, вы должны заменить это EventStreams.valuesOf, так как DoubleProperty никогда не содержит null как ценность.

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