私は次のプロパティを持つクラスを持っているの変更:通知してください。 ObservableProperties
public class Member {
private LongProperty version;
private LongProperty id;
private StringProperty name;
private StringProperty surname;
private StringProperty bornname;
private StringProperty photo;
private ObjectProperty<Age> age;
private ObjectProperty<Sex> sex;
}
私は、このオブジェクトに変更リスナーを追加するときに問題がある:私は値を変更するとき
{
private ObjectProperty<Member> member;
public void addMemberChangeListener() {
this.member.addListener((observable, oldValue, newValue) -> {
if (newValue != null) {
(...)
}
}
}
変更リスナーが通知されませんプロパティの。標準Observerパターンを実装するプロパティの変更についてリスナーに通知する方法は他にありますか?あなたは、その値のいくつかのプロパティを変更すると、それは価値memberProperty.setValue(otherMember)
を変更したとき
ここで何をしているのか明確にすることはできますか? 'member'の値を変更した場合、つまり' member.set(new member()) 'のようなことをすれば、登録した変更リスナーに通知が送られます。 'Member'インスタンスの個々のプロパティが変更されたときに通知を受けたい場合は、個々のプロパティにリスナーを登録する必要があります。 –
個々のプロパティは、オブザーバーパターンの言語における「サブジェクト」です。 –