首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >程序设计问题

程序设计问题
EN

Stack Overflow用户
提问于 2012-01-17 09:02:10
回答 3查看 71关注 0票数 2

我正在构建一个安卓应用程序,它基本上是一个RSS阅读器,使用基于活动的TabHost将不同的主题分隔成选项卡。

我有一个名为“刷新”的菜单命令,它基本上触发一个AsyncTask并解析RSS,并将其存储在设备上的SQLLite表中。

当用户单击选项卡时,我将一个主题id传递给Activity,以便只从数据库中拉出该主题的条目。在onResume中是当我刷新提要时,所以当他们点击每个选项卡时,他们就会得到最新的项目。

我的问题是,当用户单击RSS项目时,它会在浏览器中打开该项目,但当他们单击back按钮时,它应该会记住他们的位置。但是,按back将启动onResume并刷新提要,因此它会自动向上滚动到顶部。

我可能缺少一个显而易见的解决方案,但我很难想出一个好的解决方案。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-17 09:08:40

在您的onPause()方法中,记录用户正在查看的位置,以便您的onResume()方法可以将视图定位在用户离开的位置。

票数 0
EN

Stack Overflow用户

发布于 2012-01-17 09:09:08

一种解决方案可能是保存onStop()事件上的活动状态,然后根据您试图实现的行为,使用onRestart()onStart()事件自动显示最后选择的元素上的列表。

参考资料:http://developer.android.com/reference/android/app/Activity.html

票数 0
EN

Stack Overflow用户

发布于 2012-01-17 09:48:50

如果它对任何人有帮助,这就是我为了让它工作而做的。在onListItemClick事件中,我在listview上使用getFirstVisiblePosition()将位置存储在成员变量中,然后在onResume上使用setSelection(lastPosition)设置位置。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8888459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档