Até a atividade dos pais - no Android
Depois de receber uma notificação no meu aplicativo, clicar nele abre a atividade B. A atividade B possui uma atividade pai A. Aqui está o manifesto:
<activity
android:name="com.evapp.activities.B"
android:label="@string/title_activity_B"
android:parentActivityName="com.evapp.activities.A"
android:screenOrientation="portrait" >
<!-- Parent activity meta-data to support 4.0 and lower -->
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.evapp.activities.A" />
</activity>
Na atividade B, tenho a funcionalidade up ativada (seta esquerda perto do ícone da barra da ação de atividade), eis o código:
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
getActionBar().setDisplayHomeAsUpEnabled(true);
...
O problema é que, se a atividade B foi aberta através do clique na notificação (a atividade A não foi a responsável por trazer a atividade B), ao clicar no ícone, o aplicativo é fechado. Gostaria de abri-lo, é atividade pai, A. É possível? ou devo fazê-lo comstartActivity()
da atividade B?
Atualização 1- Eu adicionei este código:
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
switch (item.getItemId())
{
case android.R.id.home:
Intent upIntent = NavUtils.getParentActivityIntent(this);
if (NavUtils.shouldUpRecreateTask(this, upIntent))
{
TaskStackBuilder.create(this)
.addNextIntentWithParentStack(upIntent)
.startActivities();
}
else
{
NavUtils.navigateUpTo(this, upIntent);
}
return true;
obrigado