我希望这很简单,但我对发生的事情感到相当困惑。我正在使用从我的应用程序的其他地方复制的一段代码从 Android 活动中的 Imagebutton 启动 PDF。
if (v==imagebutton20) {
File file = new File("/sdcard/documents/20.pdf");
if (file.exists()) {
Uri path = Uri.fromFile(file);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(path, "application/pdf");
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
try {
startActivity(intent);
overridePendingTransition(R.anim.zoom_enter, R.anim.zoom_exit);
}
catch (ActivityNotFoundException e) {
}
}
} //end of load
pdf 加载正常,但是当我按下启动 pdf 的活动时,它不会显示,而是返回到之前的活动。我试过注释掉
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
但同样的效果。我错过了什么?抱歉,我无法理解官方的 android 指南,一定是度过了充实的一天!
当我检查了清单文件时,更加困惑的是活动(大脑)的 .xml,但每次我使用上面的代码加载 pdf 时,我都会回到我的应用程序中的错误活动(主要)。我通过图像视图从 Main 调用 Brain 活动,但效果很好。当我从 Brain 启动上面的 PDF 时,后退按钮将我带到 Main 而不是启动活动 Brain。
我在我的应用程序的其他 2 个活动中的其他地方使用了上面的代码,并且后退键的行为与您想要/期望的完全一样。这就是为什么我开始检查 mainfest 文件,但不知道我缺少什么。
任何帮助都会是王牌!
谢谢。