One possibility is to use ViewStub.
ViewStub is a view light without dimensions that does not participate in layout .
Create a layout for each part of the form.
In the Activity / fragment layout where you want to display the form declare a ViewStub for each part:
<FrameLayout ...>
<ViewStub
android:id="@+id/stub_parte1"
android:inflatedId="@+id/frm_parte1"
android:layout="@layout/formulario_parte1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<ViewStub
android:id="@+id/stub_parte2"
android:inflatedId="@+id/frm_parte2"
android:layout="@layout/formulario_parte2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
...
...
</FrameLayout>
For a reference to each ViewStub use:
stub_parteX = ((ViewStub) findViewById(R.id.stub_parteX));
To bring to the screen each part of the form use:
View formulario_parteX = stub_parteX.inflate();
To hide a part use:
stub_parteX.setVisibility(View.GONE);
The advantage of using ViewStub over the traditional hide / show of layouts , is ViewStub maintaining the hierarchy of lighter views , since layouts are only added to the hierarchy after "inflated."