我有一个 ListView ,其中包含我从网络上获得的一些数据。现在我可以在列表项中进行更改,一旦对项进行更改,我就会将更新后的值存储在数据库中。当我下次登录该应用程序时,我将从网络下载内容并将其显示在 ListView 中,并包含我上次所做的更改。所以我的方法是,我在列表适配器的 getview 方法中查询数据库中的每个项目以检查更改。对适配器的每个项目的 getview 方法进行数据库查询是一个好习惯吗?如果没有,请建议我一些替代方案。谢谢。
最佳答案
永远、真的、永远不要那样做。
如果您将数据下载代码放入适配器的 getView 方法中,它将对列表的每一行进行网络调用。
更糟糕的是,只要该行出现在屏幕上,它就会调用它,而不仅仅是一行一次。
您应该首先获取所有数据,然后仅使用适配器来绘制它。
您可以随时调用数据库来检查更改,并在需要时通知适配器重新绘制列表以显示更改。
希望这有帮助。
关于android - 从列表适配器访问数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33519523/