webview上的后退按钮退出应用程序,而不是显示以前的列表视图结果

时间:2012-10-26 14:07:23

标签: android

我正在开发一个应用程序,它最初在onPostExecute中加载项目的列表视图。选择项目后,在webview上打开更详细的详细信息(仍然在onPostExeceute内)是没有问题的。但是,点击webview中的goback按钮只会退出整个应用程序。

有人可以帮忙。

因此,事件方案就是如此 活动创建建立网络广播 - > onStart - > AsyncTask - >检索数据 - > onPostExecute - > setContentView(ListView) - > onClickListener - > WebView - >此阶段的goback按钮然后退出整个应用程序。

我相信有人可以帮助我,我真的很感激任何努力。

此致

2 个答案:

答案 0 :(得分:1)

这种行为很正常。您的活动中的onBackPressed()事件调用finish()方法,并将您带回到刚开始的地方。

你仍然有可能抓住这个事件并告诉你的应用程序下一步该怎么做

答案 1 :(得分:0)

Android中后退键的默认行为是返回上一个Activity,或者如果您已经在root活动中,则退出应用程序。听起来您的WebView与ListView位于同一个Activity中,因此当您单击“返回”键时,应用程序将退出,因为之前没有要返回的活动。

一种解决方案是创建一个新的Activity来显示WebView并传入您想要显示的数据。将WebView加载到单独的Activity中,按“返回”按钮将完成WebView活动,将您带回列表。您还可以通过这种方式获得屏幕转换的额外好处。

另一个解决方案是覆盖ListView Activity中的onKeyUp方法并手动按下后退键。 (我个人推荐使用onKeyUp而不是onKeyDown,因为这样可以更容易地按这种方式处理长按)捕获事件并在单击列表中的项目时撤消正在执行的操作。