Android obtener actividad anterior
Tengo 2 actividades: Activity1
y Activity2
. En cada una de estas actividades hay un botón que me lleva a una tercera actividad ( MainActivity
). En MainActivity
quiero saber de qué página de actividad se ha llamado.
- Iniciar una actividad desde un fragmento
- Llamar startIntentSenderForResult de Fragment (Android Billing v3)
- Determinar si existe una actividad en el dispositivo actual?
- Ciclo de vida de la clase de aplicaciones Android
- Recortar el área de ruta seleccionada desde la vista de imagen personalizada
- Android - Actividad como diálogo con ActionBar
- Cómo llamar a un método en otra Actividad de la Actividad
- Android cambia el diseño dinámicamente
- Android: Actualización de campos para ParseUsers
- Android: configChanges = "orientación" no funciona con fragmentos
- Ciclo de vida de la actividad de Android: orden de estado cuando se inicia una nueva actividad
- No se puede pasar un ArrayList <Parcelable> a una actividad
- Cómo hacer HorizontalScrollView RIGHT a LEFT Scroll android
Puede utilizar el atributo putExtra del intento para pasar el nombre de la actividad.
Actividad de llamada,
Intent intent = new Intent(this, Next.class); intent.putExtra("activity","first"); startActivity(intent);
Siguiente Actividad,
Intent intent = getIntent(); String activity = intent.getStringExtra("activity");
Ahora, en la actividad de cadena, obtendrás el nombre de la Actividad que ha venido.
Puedes usar:
public ComponentName getCallingActivity()
Para saber qué actividad llamó su Activity
actual.
Use putExtra () para identificar la actividad anterior.
Intent i = new Intent(Activity1.this, MainActivity.class).putExtra("from", "activity1"); startActivity(i);
Para comprobar la actividad en la actividad principal,
if(getIntent().getStringExtra("from").equals("activity1")){ //From Activity 1 }else { // Activity 2 }
ActivityManager am = (ActivityManager) this.getSystemService(Activity.ACTIVITY_SERVICE); String packageName = am.getRunningTasks(1).get(0).topActivity.getPackageName(); String className = am.getRunningTasks(1).get(0).topActivity.getClassName();
Y hemos establecido el permiso:
<uses -permission="-permission" android:name="android.permission.GET_TASKS"> </uses>
Al pasar de una actividad a otra, puede pasar el nombre de la actividad como se indica a continuación
Intent i = new Intent(this, deliveries.class); i.putExtra("ActivityName", "ActivityOne"); startActivity(i);
Y compruebe el nombre de la actividad en la otra actividad
Bundle extra = getIntent().getExtras(); String activityName = Long.parseLong(extra.getSerializable("ActivityName") toString());
Creo que puede resolver su problema
- Activar la funcionalidad del botón de retroceso en el botón de clic en Android
- ¿Cómo reintentar las solicitudes HTTP con OkHttp / Retrofit?