# Print output for @column tags ?>
Developers

- Design
- Develop
- Distribute

Developer Console

## Most visited

## Recently visited

## Results for

Summary: Ctors | Methods | Inherited Methods

# BidirectionalTypeConverter

`public abstract class BidirectionalTypeConverter`
`` `extends TypeConverter<T, V>` ``

java.lang.Object
↳ | android.animation.TypeConverter<T, V>
| ↳ | android.animation.BidirectionalTypeConverter<T, V>

Abstract base class used convert type T to another type V and back again. This is necessary when the value types of in animation are different from the property type. BidirectionalTypeConverter is needed when only the final value for the animation is supplied to animators.

See also:

- `PropertyValuesHolder.setConverter(TypeConverter)`

## Summary

### Public constructors
`BidirectionalTypeConverter(Class<T> fromClass, Class<V> toClass)`

### Public methods
`abstract T` | `convertBack(V value)` Does a conversion from the target type back to the source type.
`BidirectionalTypeConverter<V, T>` | `invert()` Returns the inverse of this converter, where the from and to classes are reversed.

### Inherited methods
From class `android.animation.TypeConverter`
`abstract V` | `convert(T value)` Converts a value from one type to another.
From class `java.lang.Object`
`Object` | `clone()` Creates and returns a copy of this object.
`boolean` | `equals(Object obj)` Indicates whether some other object is "equal to" this one.
`void` | `finalize()` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
`final Class<?>` | `getClass()` Returns the runtime class of this `Object`.
`int` | `hashCode()` Returns a hash code value for the object.
`final void` | `notify()` Wakes up a single thread that is waiting on this object's monitor.
`final void` | `notifyAll()` Wakes up all threads that are waiting on this object's monitor.
`String` | `toString()` Returns a string representation of the object.
`final void` | `wait(long timeout, int nanos)` Causes the current thread to wait until another thread invokes the `notify()` method or the `notifyAll()` method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.
`final void` | `wait(long timeout)` Causes the current thread to wait until either another thread invokes the `notify()` method or the `notifyAll()` method for this object, or a specified amount of time has elapsed.
`final void` | `wait()` Causes the current thread to wait until another thread invokes the `notify()` method or the `notifyAll()` method for this object.

## Public constructors

### BidirectionalTypeConverter

    public BidirectionalTypeConverter (Class<T> fromClass,
                    Class<V> toClass)

Parameters
`fromClass` | `Class`
`toClass` | `Class`

## Public methods

### convertBack

    public abstract T convertBack (V value)

Does a conversion from the target type back to the source type. The subclass must implement this when a TypeConverter is used in animations and current values will need to be read for an animation.

Parameters
`value` | `V`: The Object to convert.

Returns
`T` | A value of type T, converted from `value`.

### invert

    public BidirectionalTypeConverter<V, T> invert ()

Returns the inverse of this converter, where the from and to classes are reversed. The inverted converter uses this convert to call `convertBack(java.lang.Object)` for `TypeConverter.convert(java.lang.Object)` calls and `TypeConverter.convert(java.lang.Object)` for `convertBack(java.lang.Object)` calls.

Returns
`BidirectionalTypeConverter<V, T>` | The inverse of this converter, where the from and to classes are reversed.

Full name *
Email address *
Company / developer name
One of your Play Store app URLs *
Which best describes your business:*
Apps
Games
Apps & Games
*
*