public class ObservableParcelable<T extends android.os.Parcelable> extends ObservableField<T> implements android.os.Parcelable, java.io.Serializable
Observable field classes may be used instead of creating an Observable object:
public class MyDataObject {
public final ObservableParcelable<String> name = new ObservableParcelable<String>();
public final ObservableInt age = new ObservableInt();
}
Fields of this type should be declared final because bindings only detect changes in the
field's value, not of the field itself.
This class is parcelable but you should keep in mind that listeners are ignored when the object is parcelled. Unless you add custom observers, this should not be an issue because data binding framework always re-registers observers when the view is bound.
android.os.Parcelable.ClassLoaderCreator<T>, android.os.Parcelable.Creator<T>
Observable.OnPropertyChangedCallback
Modifier and Type | Field and Description |
---|---|
static android.os.Parcelable.Creator<ObservableParcelable> |
CREATOR |
Constructor and Description |
---|
ObservableParcelable()
Creates an empty observable object
|
ObservableParcelable(T value)
Wraps the given object and creates an observable object
|
Modifier and Type | Method and Description |
---|---|
int |
describeContents() |
void |
writeToParcel(android.os.Parcel dest,
int flags) |
get, set
addOnPropertyChangedCallback, notifyChange, notifyPropertyChanged, removeOnPropertyChangedCallback
public static final android.os.Parcelable.Creator<ObservableParcelable> CREATOR
public ObservableParcelable(T value)
value
- The value to be wrapped as an observable.public ObservableParcelable()