Regresar a la actividad principal con un error de actividad padre en el manifiesto

Este es el código manifiesto relacionado con el asunto:

<activity android:name="smartHomes.capstone.GeneralAndSecurity" android:label="@string/title_activity_general_and_security" android:parentActivityName="smartHomes.capstone.HomePage" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="smartHomes.capstone.HomePage" /> </activity> 

Este es el registro de errores:

  03-20 21:19:18.227: E/AndroidRuntime(787): FATAL EXCEPTION: main 03-20 21:19:18.227: E/AndroidRuntime(787): java.lang.IllegalArgumentException: Activity GeneralAndSecurity does not have a parent activity name specified. (Did you forget to add the android.support.PARENT_ACTIVITY <meta-data> element in your manifest?) 03-20 21:19:18.227: E/AndroidRuntime(787): at android.support.v4.app.NavUtils.navigateUpFromSameTask(NavUtils.java:177) 03-20 21:19:18.227: E/AndroidRuntime(787): at smartHomes.capstone.GeneralAndSecurity.onOptionsItemSelected(GeneralAndSecurity.java:41) 03-20 21:19:18.227: E/AndroidRuntime(787): at com.actionbarsherlock.app.SherlockActivity.onMenuItemSelected(SherlockActivity.java:208) 

¿Puedo por favor saber porqué es la vuelta para arriba el botón que me devuelve un error?

Lo mismo funcionó para mí sin meta-data

Aquí está mi ejemplo.

  <activity android:name="com.redplanet.sandboxandroid.ui.MainActivity" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.redplanet.sandboxandroid.ui.SecondActivity" android:parentActivityName="com.redplanet.sandboxandroid.ui.MainActivity" > </activity> 

Mi clase SecondActivity .

 public class SecondActivity extends SherlockFragmentActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.countries_list); ActionBar actionBar = getSupportActionBar(); actionBar.setDisplayOptions(ActionBar.DISPLAY_HOME_AS_UP | ActionBar.DISPLAY_SHOW_TITLE); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: NavUtils.navigateUpFromSameTask(this); break; } return super.onOptionsItemSelected(item); } } 

He tenido el mismo problema, pero fue simplemente un error tipográfico en el nombre del paquete. ¿Comprobó dos veces el nombre del paquete y de la clase?

Prueba en tu manifiesto para añadir esto a tu padre Actividad:

android:allowBackup="true"

Ejemplo:

 <activity android:name=".View.MainActivity" android:allowBackup="true"> </activity> <activity android:name=".View.ChildActivity" android:parentActivityName=".View.ChildActivity"> <meta-data android:name="android.support.PARENT_ACTIVITY" android:value=".View.MainActivity" /> </activity> 

Y en su ChildActivity:

 public class ChildActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_child); getSupportActionBar().setDisplayHomeAsUpEnabled(true); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; } return super.onOptionsItemSelected(item); } } 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.