Quiero iniciar un nuevo Inten dinámicamente. Por lo tanto, setClassName
parece la mejor opción.No se puede iniciar un nuevo intento por setClassName con un paquete diferente en Android
Primero, defino 3 actividad en el manifiesto
<activity android:name="com.example.pkg2.Act" />
<activity android:name="com.example.pkg1.Act1" />
<activity android:name="com.example.pkg1.Act2" />
De com.example.pkg2.Act
:
Intent intent = new Intent();
if(index == 0) intent.setClassName(Act.this, "com.example.pkg1.Act1");
else intent.setClassName(Act.this, "com.example.pkg1.Act2");
startActivity(intent);
y conseguirá esta excepción:
Unable to find explicit activity class {com.example.pkg2.Act/com.example.pkg1.Act1}; have you declared this activity in your AndroidManifest.xml?
Parece que sólo podemos usar setClassName
para iniciar dinámicamente una nueva actividad pero dentro del mismo paquete.
¿Alguna idea para resolver este problema? Toda la ayuda es apreciada.
' ' cambio Act1 a ACT2 se ha declarado Act1 dos ¿veces? –
Gracias @imrankhan Es mi culpa cuando copie y pegue: p – anticafe
está bien, vea mi respuesta actualizada. –