Android-打开activity时只调用了一遍adapter.notifydatasetchanged(),但log显示运行了很多次,不知道是为什么?

发布于 2017-02-05 04:38:35 字数 259 浏览 1218 评论 1

我编写的Activity,在打开activity并加载数据时,只调用了一遍adapter.notifydatasetchanged(),但是在log里显示notifydatasetchanged实际上调用了好几遍,有4遍之多。调用notifydatasetchanged会触发一个循环的getview(),但是我的log显示一共调用了4个循环的getview(),即我认为notifydatasetchanged一共调用了4次,但是我不知道在哪里调用了其他3次?有没有人知道这种情况,给解释下,非常感谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

虐人心 2017-10-06 13:59:37

这个应该不是adapter.notifydatasetchanged()调用的,而是adapter有时候会重复调用getView().可能会是因为adapter不确定View的长宽,多次测量,导致多次调用getview()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文