在android 4.0.4中,“向上”按钮不能正常工作
我有一个主要活动和一个儿童活动。我正在使用“子活动”中的“向上”按钮返回主活动。在我的活动中,我有一些动画,当我从子活动返回时,我不想再次启动它。以下是儿童活动中的家庭活动:在android 4.0.4中,“向上”按钮不能正常工作,android,android-activity,android-navigation,up-button,Android,Android Activity,Android Navigation,Up Button,我有一个主要活动和一个儿童活动。我正在使用“子活动”中的“向上”按钮返回主活动。在我的活动中,我有一些动画,当我从子活动返回时,我不想再次启动它。以下是儿童活动中的家庭活动: @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: Intent intent
@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>
当我用安卓4.4.4在LG nexus 5上运行它时,它工作得很好,但在安卓4.0.4的Xperia arc上,每次我回到主要活动时,它都会启动动画。解决办法是什么
更新:
我可以通过以下方式之一实现我想要的:
1-按下up键时仅调用finish
2-向意向添加标志时,使用Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP
但我想知道是什么导致了android 4.4.4和4.0.4中的这种行为差异
提前谢谢 根据,您可以使用NavUtils.navigateUpFromSameTaskthis;不要自己构建意图,因为这将正确处理标志以返回到父活动。请在问题中添加您的评论,这样当人们阅读时可以轻松理解情况:-@mmlooloo谢谢。我做到了:-当我返回到主活动时,它会使两台设备都启动动画。对,Up和Back finish所做的是不同的操作:Back只是关闭当前屏幕并转到用户来自的位置,而Up涉及创建语义一致的父状态。如果父活动的清单条目上没有singleTop,那么您将看到它完全重新创建父活动和所看到的动画。