我解析Intent
时有以下逻辑。不幸的是,调用此代码(通过单击主页按钮)会使其表现得像背压。
if (parentIntent == null) {
parentIntent = activity.getPackageManager().getLaunchIntentForPackage(activity.getPackageName());
}
NavUtils.navigateUpTo(activity, parentIntent);
以下代码完成了这项工作:
if (parentIntent == null) {
activity.startActivity(
activity.getPackageManager()
.getLaunchIntentForPackage(
activity.getPackageName())
.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
activity.finish();
} else {
NavUtils.navigateUpTo(activity, parentIntent);
}
任何人都知道为什么NavUtils
表现得像这样?
答案 0 :(得分:0)
引用文档:
NavUtils.navigateUpTo(Activity sourceActivity, Intent upIntent);
从sourceActivity导航到upIntent指定的活动,完成流程中的sourceActivity。
所以,是的,NavUtils.navigateUpTo的行为类似于后退按钮,如果您从主页按钮单击监听器调用第一段代码,您将被带回上一个活动。