向上按钮在android 4.0.4中无法正常工作

时间:2014-10-04 09:38:35

标签: android android-activity android-navigation up-button

我有一项主要活动和一项儿童活动。我在儿童活动中使用按钮返回主要活动。在我的活动中,我有一些动画,当我从孩子活动回到它时,我不想再次启动它。所以这里是儿童活动的家庭行动:

@Override
    public boolean onOptionsItemSelected(MenuItem item) {

        switch (item.getItemId()) {
        case android.R.id.home:
            Intent intent = NavUtils.getParentActivityIntent(this);
            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            NavUtils.navigateUpTo(this, intent);
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

这里显而易见:

 <activity
      android:name=".ChildActivity"
      android:label="@string/app_name"
      android:parentActivityName=".MainActivity" >

      <!-- Parent activity meta-data to support 4.0 and lower -->
      <meta-data
          android:name="android.support.PARENT_ACTIVITY"
          android:value=".MainActivity" />
</activity>

当我在 LG nexus 5 上使用 android 4.4.4 运行时,它运行正常但在 Xperia arc android 4.0 .4 每次我返回主要活动时都会启动动画。解决方案是什么?

更新

我可以使用以下方法之一实现我想要的目标:

1-按下向上时只需拨打finish()

2-在向意图添加标记时使用Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP

但我想知道导致android 4.4.4和4.0.4中这种行为差异的原因。

提前致谢!

1 个答案:

答案 0 :(得分:0)

根据Providing Up Navigation,您可以使用NavUtils.navigateUpFromSameTask(this);而不是自己构建Intent,因为这会正确处理标记以返回父活动。

相关问题