Я нашел действительно хороший класс для этой цели, который помог мне. Этот не способен по-настоящему переключать действия, но вы можете переключать несколько «экранов» или «форм».
Для этого нет библиотеки, в которой я нашел ее в этом вопросе (важен файл Java "DragableSpace.java":
Рабочий стол Android
Вы не видите там, как использовать его в макете, так что вот мой пример:
<com.matthieu.launcher.DragableSpace xmlns:app="http://schemas.android.com/apk/res/com.matthieu.launcher"
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/space"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<include android:id="@+id/left" layout="@layout/artists" />
<include android:id="@+id/center" layout="@layout/releases" />
<include android:id="@+id/right" layout="@layout/labels" />
</com.matthieu.launcher.DragableSpace>
Вы можете включить столько «экранов», сколько хотите, которые в основном являются просто ссылками на другие файлы макета. Чем вы можете переключать эти экраны, перетаскивая (как домашние экраны).