我正在处理我的爱好项目,以了解有关Android编程和内容的更多信息。所以我最近遇到了一个简单的问题,但无法找到解决方案。
我的项目目前有2项活动[MainActivity]
,[CommentActivity]
。
在MainActivity中,我有一个listadapter (cusAdapter)
将从数据库中获取所有内容并将其显示在listview上。一切都很好。它将根据帖子ID获取特定帖子的所有评论和总评论。在相同的MainActivity中,我有一个注释按钮和一个onclick监听器,当点击它时,用户将进入下一个活动[CommentActivity]并使用另一个自定义适配器加载所需的所有注释和数据。我还有一个完整的评论TextView,它将显示json提取的总评论并将其显示在我的列表视图中。
当用户在CommentActivity上发表评论时,它将通过AsyncTask保存到数据库中。
现在问题是,当我按下后退按钮并从CommentActivity导航回MainActivity时,我使用intent with flag(intent.flag_activity_reorder_to_front)。因此,当按下后退按钮时,它永远不会再次重新加载MainActivity。此外,它永远不会更新MainActivity中的总评论。我想要做的是当在CommentActivity上按下后退按钮时,我希望它刷新/重新加载MainActivity中的ListAdapter以从数据库中获取最新数据。
此外,我不想重新加载整个MainActivity,我只是想更新视图而不重新加载整个活动。
我相信必须有一些简单的方法来做到这一点。如果你们需要帮助我,我可以发布代码。
谢谢。
答案 0 :(得分:1)
在您的MainActivity中,您可以检查onResume以查看数据是否已更改,因为当您从CommentActivity返回时,将会调用此数据。
如果数据已更改,则在适配器上调用notifyDataSetChanged()将使用新数据重新加载视图
答案 1 :(得分:1)
是的,有一种简单的方法。 使用以下方式开始您的第二项活动:
希望它有所帮助。