AnimatedWidget is an abstract class and, as we said before, we need to override its build() method directly to reflect animation changes. Its constructor is defined as follows:
const AnimatedWidget({
Key key,
@required Listenable listenable
})
As you can see, the only required property is the Listenable object so that it can listen to animation updates. The whole widget build logic is the responsibility of its descending class.