我希望这很简单,但我对于发生的事情感到非常困惑。我正在使用从我的应用程序中的其他地方复制的一段代码在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 isnt show的活动时,它返回之前的活动。我试过评论
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
但效果相同。我错过了什么?对不起,但我无法理解官方的Android指南,必须有一个厚厚的一天!
因为我检查了清单文件,活动(脑)的.xml,然后每次使用上面的代码加载pdf时,我都会更加困惑,这会让我回到我的应用程序中的错误活动(主要)。我通过imageview调用Main的Brain活动,但效果很好。当我从Brain上面启动PDF时,后退按钮将我带到Main而不是启动活动Brain。
我在我的应用程序中的其他2个活动中使用上面的代码,后退键的行为完全符合您的期望/期望。这就是为什么我开始检查mainfest文件,但不知道我缺少什么。
任何帮助都是王牌!
感谢。
答案 0 :(得分:0)
我无法解释为什么以下情况有效,但如果其他人有类似问题我通过以下方式解决了问题:
简单而且不确定为什么会有效,但确实如此。