# I like to move it, move it!

## The Goal

What you'll learn:

* Creating a layout using `ConstraintLayout`
* Animating multiple views by using a `MotionLayout`
* Using a `MotionScene`
* Create a self-contained `MotionScene`&#x20;
* Animate a shared element between activities
* Animate RecyclerView item additions/removals
* VectorDrawables and icon morphing

## Final look of the layout&#x20;

This is how your app will look like after the last step.&#x20;

![](https://720760333-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LMI4Smg5kqkZcFtc7nH%2F-LOYp0f_CTQwZ6dxgfkS%2F-LOYp7DHU8PuChO0Doz1%2Fezgif-5-14ce501b218f.gif?alt=media\&token=3e23e5e5-42e8-41aa-bea8-5fdafe75d36a)

![](https://720760333-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LMI4Smg5kqkZcFtc7nH%2F-LOYp0f_CTQwZ6dxgfkS%2F-LOYpFweDc6iuf1jChCV%2Fezgif-5-01bdbc26284e.gif?alt=media\&token=60584557-4bb3-4d83-9926-f1fbe9d9ae09)

## A tip...&#x20;

This workshop will be online so you don't need to hurry up. After each step I've posted the solutions. Before peeking in them, make sure you've tried your best! I'm here to help you; It's going to be much easier to answer your questions now (I promise I'll do my best!) than go home and wonder why your code wasn't working.&#x20;

## A disclaimer...&#x20;

**This is a demo for making awesome animations.** Thus I tried to reduce the "unnecessary" code a.k.a the code not needed for the animations or the core functionality, to the minimum. There will be some bugs at the end (extra points if you find them ).

You'll find the link for the "fixed" version at the end of the workshop.&#x20;

## Now\... ... ...&#x20;

![](https://720760333-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LMI4Smg5kqkZcFtc7nH%2F-LNR0pvqMYvTJ6ThOvLY%2F-LNR0vg-Err7-Y_gFGN0%2Fgiphy.gif?alt=media\&token=4801f9fc-94c5-46f4-a8fc-daaa3d773725)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://elizacamber.gitbook.io/animations-2018/i-like-to-move-it-move-it.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
