Чтобы прослушать изменения свойств, вам нужно продлить BaseObservable
.
Я думаю, что проблема здесь в том, что изменение свойства не вызывает событие, потому что вы слушаете Изменение поля, то есть сам объект маркера, который остается тем же.
Marker
поле Latitude
не наблюдается, это означает, что невозможно обнаружить его изменение.
У вас есть два варианта.
Если вы хотите обнаружить изменения, вы можете создать наблюдаемое поле для Широта .
public ObservableField<String> latitudeObservableField = new ObservableField<>();
Вы можете прослушать поле Changes и обновить маркер объекта.
latitudeObservableField.addOnPropertyChangedCallback(() -> {
// Update marker object
})
Другой подход заключается в том, чтобы Marker
расширить BaseObservable
, как описано в прилагаемой ссылке.
Пожалуйста, ознакомьтесь с официальной документацией по наблюдаемым объектам .