Cómo llamar a fragmento de una actividad en android?
Estoy trabajando en android fragments
. En mi aplicación estoy recibiendo un problema con la activity
y el fragment
. Es decir, creé un button
en el fragment1
y llamé una activity1
en ese button
. Una vez más en activity1
he creado otro button
y llamado activity2
. Ahora de activity2
he llamado activity1
y de activity1
estoy tratando de llamar fragment1
. Pero está mostrando un error en id (¿puede alguien decirme qué identificación necesitamos dar). Investigué en google sobre cómo llamar al fragment
de la activity
pero no encontré ninguna solución para esto. Por favor, ayúdame con este problema. Gracias por adelantado.
Mi código:
- OnActivityResult () no se llama
- Actividad, AppCompatActivity, FragmentActivity y ActionBarActivity: ¿Cuándo utilizar qué?
- Android FragmentPagerAdapter con LoaderManager
- ¿Cómo puedo habilitar las pestañas de la barra de acciones en un fragmento?
- GetSupportFragmentManager getFragment sin etiqueta o ID
Actividad1.clase
public void back(View v) { MyFragment1 fragmentS1 = new MyFragment1(); getFragmentManager().beginTransaction().replace(android.R.id.frame_container, fragmentS1).commit(); } Logcat Error: 04-10 10:55:28.876: E/AndroidRuntime(22103): FATAL EXCEPTION: main 04-10 10:55:28.876: E/AndroidRuntime(22103): java.lang.IllegalArgumentException: No view found for id 0x7f0a0004 (com.vizteck.navigationdrawer:id/frame_container) for fragment Fragment1{429cba90 #0 id=0x7f0a0004} 04-10 10:55:28.876: E/AndroidRuntime(22103): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:895) 04-10 10:55:28.876: E/AndroidRuntime(22103): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1075) 04-10 10:55:28.876: E/AndroidRuntime(22103): at android.app.BackStackRecord.run(BackStackRecord.java:682) 04-10 10:55:28.876: E/AndroidRuntime(22103): at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1455) 04-10 10:55:28.876: E/AndroidRuntime(22103): at android.app.FragmentManagerImpl$1.run(FragmentManager.java:441) 04-10 10:55:28.876: E/AndroidRuntime(22103): at android.os.Handler.handleCallback(Handler.java:725) 04-10 10:55:28.876: E/AndroidRuntime(22103): at android.os.Handler.dispatchMessage(Handler.java:92) 04-10 10:55:28.876: E/AndroidRuntime(22103): at android.os.Looper.loop(Looper.java:137) 04-10 10:55:28.876: E/AndroidRuntime(22103): at android.app.ActivityThread.main(ActivityThread.java:5283) 04-10 10:55:28.876: E/AndroidRuntime(22103): at java.lang.reflect.Method.invokeNative(Native Method) 04-10 10:55:28.876: E/AndroidRuntime(22103): at java.lang.reflect.Method.invoke(Method.java:511) 04-10 10:55:28.876: E/AndroidRuntime(22103): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102) 04-10 10:55:28.876: E/AndroidRuntime(22103): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869) 04-10 10:55:28.876: E/AndroidRuntime(22103): at dalvik.system.NativeStart.main(Native Method)
- Detectar el cambio de la pestaña ViewPager dentro del fragmento
- ViewPager + Fragmentos - Fragmento no mostrado
- ViewPager + Adaptador en Fragmento => laggy swiping
- Cómo cambiar fragmento de forma programática en FragmentPagerAdapter?
- Onbackpressed en el fragmento no funciona mientras se implementa la interfaz
- Establecer la orientación para sólo 1 fragmento en mi actividad, mientras que el resto está en el retrato
- Agregar diálogo de progreso a la barra de acción sherlock from sherlock fragment
- Reemplazar fragmento dentro de un ViewPager
Prueba esto..
Quitar android de este android.R.id.frame_container
Si está utilizando activity1
extends Activity
use getFragmentManager()
o si está utilizando activity1
extiende FragmentActivity
use getSupportFragmentManager()
.
como abajo
MyFragment1 fragmentS1 = new MyFragment1(); getSupportFragmentManager().beginTransaction().replace(R.id.frame_container, fragmentS1).commit();
Fragment frag; FragmentManager fm1 = MainActivity.this .getSupportFragmentManager(); FragmentTransaction ft1 = fm1.beginTransaction(); frag = new Animal_Activity(); ft1.replace(R.id.activity_main_content_fragment, frag); ft1.commit();
Escríbalo en tu actividad como a continuación
Fragment fragment = new YourFragment(); FragmentManager fragmentManager = getSupportFragmentManager(); FragmentTransaction transaction = fragmentManager.beginTransaction(); transaction.replace(R.id.output1, fragment); transaction.addToBackStack(null); transaction.commit();
Hacer esto:-
FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager .beginTransaction(); MyFragment1 fragmentS1 = new MyFragment1(); fragmentTransaction.replace(R.id.realtabcontent, mBarcodeScreen); fragmentTransaction.commit();
Buena suerte !!
Simplemente puede llamar así:
Fragment fragment = new FragmentName(); FragmentManager fragmentManager = ((Activity) context).getFragmentManager(); fragmentManager.beginTransaction().replace(R.id.fragment_main, fragment).commit();
- ¿Cuánta memoria recibe cada proceso de Android?
- ¿En qué hilo se ejecuta onReceive () de un BroacastReceiver registrado con LocalBroadcastManager?