Cómo reemplazar un ViewPager con un fragmento

Tengo el siguiente diseño

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <android.support.v4.view.ViewPager android:id="@+id/view_pager" android:layout_width="match_parent" android:layout_height="match_parent" > </android.support.v4.view.ViewPager> 

Everyting es workinf bien, pero quiero reemplazar el ViewPager con un fragmento

 getSupportFragmentManager().beginTransaction() .replace(R.id.view_pager, new CustomFragment()) .commit(); 

Esto no es repacing ViewPager ¿qué debo hacer ???

One Solution collect form web for “Cómo reemplazar un ViewPager con un fragmento”

Puede crear un fragmento que contiene el ViewPager y , a continuación, reemplazar ese fragmento.

 public class ViewPagerContainerFragment extends Fragment { private ViewPager mViewPager; public ViewPagerContainerFragment() { } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View root = inflater.inflate(R.layout.view_pager_container_fragment, container, false); // Set up the ViewPager, attaching the adapter and ... mViewPager = (ViewPager) root.findViewById(R.id.viewPager); // do other stuff... return root; } } 

View_pager_container_fragment.xml

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/rlMain" android:layout_width="fill_parent" android:layout_height="fill_parent"> <android.support.v4.view.ViewPager android:id="@+id/viewPager" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </RelativeLayout> 

El archivo .xml de su actividad:

  <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/content_frame" android:layout_width="match_parent" android:layout_height="match_parent"> </FrameLayout> 

Y luego reemplazar fragmentos como este:

Agregar el ViewPagerContainerFragment al diseño de las actividades:

 getSupportFragmentManager().beginTransaction() .replace(R.id.content_frame, new ViewPagerContainerFragment()) .commit(); 

Y en algún lugar más adelante en código: (si desea – reemplazar el ViewPagerFragment con otro fragmento)

 getSupportFragmentManager().beginTransaction() .replace(R.id.content_frame, new CustomFragment()) .commit(); 

Asegúrese de no crear fugas de memoria y de configurar correctamente su adaptador.

  • FragmentTransacation con diapositiva en / out animación en> 4 rendimiento
  • Fragmento de Android: ¿se mueve de una vista a otra?
  • Fragmento de Android La transacción con animación provoca que el flash blanco
  • Cómo borrar backStack de soporte FragmentManager?
  • Salir de la animación no funciona; FragmentTransaction animación personalizada no funciona para ocultar
  • FragmentManager.getFragmens (). Size () no disminuyen después de FragmentTransaction.remove (Fragment)
  • Android TextInputLayouts perder texto / contenido al volver en la transacción de fragmentos
  • Se hace clic en un diseño invisible detrás del fragmento:
  • Cómo agregar un fragmento a un diseño de un DialogFragment?
  • ViewPager dentro de Fragmento desaparece después de transaction.remove () (Mantener instancia?)
  • Android: Fragmento de diálogo y problemas de Backstack
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.