问题标签 [android-lazyloading]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1280 浏览

android - 在 LIstView 中延迟加载图像非常慢

我已经在我的应用程序(twitter 类型的应用程序)中实现了图像的延迟加载(来自远程服务器),并且获取部分并将图像加载到确切的 imageView 中工作得很好。但是适配器的“getView”部分只有在我向下滚动 ListView 后才会被调用,因此只有在我向下滚动之后才能从远程服务器获取图像(我通过在适配器“getView”代码中执行 asyntask 来获取图像)看到正在加载的图像有相当大的延迟。一旦图像被加载并存储在内存缓存中,向上或向下滚动就没有问题了。唯一的问题是第一次加载图像加载缓慢

那么有没有办法纠正它,当我向下滚动时,我应该能够获得图像位图并在我向下滚动时设置位图。我希望它与 twitter 应用程序完全一样,我在加载个人资料图片时看不到延迟。

TIA

0 投票
1 回答
1126 浏览

android - 什么时候使用延迟加载,什么时候不使用。?

我在数据库中有 5000 个名字。我希望将所有这些名称膨胀到 ListView 上。其中有以下元素

  1. 图标图像(本地存储在 Drawables 中)
  2. 姓名
  3. 距离(公里)

我正在使用搜索过滤过滤此 listView,如下所示:

我也在对列表视图进行排序,例如:按字母顺序排列列表视图名称(AZ 和 ZA)。排序是在 listView 适配器上完成的,如下所示:

考虑到适配器的性能,现在我很困惑是否将名称延迟加载到列表视图中(因为我有 5000 多个名称)。请建议。

0 投票
3 回答
1039 浏览

android - 延迟加载实现错误

我正在尝试在选项卡片段中的列表视图上实现延迟加载以加载数组 abc 的元素。我正在尝试加载 10 个元素,然后当用户向下滚动时,将加载接下来的 10 个元素。但是我的应用程序无法运行,因为我无法跳转到 UI 线程以对其进行更新(runonUithread(returnRes); 无法正常工作)。你能[请看下面的代码并提出正确的方法来实现延迟加载。谢谢你。

片段类:

日志猫:

片段活动类:

0 投票
0 回答
1221 浏览

android - 刷新片段选项卡中的列表视图

我必须标签,两者都包含列表视图。我正在解析数据并通过延迟加载将它们放入列表视图。我成功地做到了。但是我面临一个问题。将数据加载到 tab1 的 listview 后,当我转到 tab2 并返回 tab1 时,tab1 的 listview 中的所有数据都被删除。tab 2 也是如此。但是数据仍然存在于数组中,我使用它填充了列表视图。任何人都可以看看它。谢谢。

FragmentActivity 类:用于创建和显示选项卡:

Tab1 片段类 - 包含列表视图:

Tab2 片段类 - 还包含列表视图:

0 投票
3 回答
7577 浏览

android - 使用从互联网下载的图像延迟加载 GridView

多年来我一直在访问 Stack Overflow,这是我第一次找不到任何可以解决我的问题的帖子(至少我没有看到任何帖子)。

我有一个GridView带有自定义适配器的 a ,我已将其覆盖以返回由 aImageView和 a创建的自定义视图TextView

我在 JSON 从带有 的 URL 解析图像后加载图像AsyncTask,将所有信息存储到方法中的 中并在ArrayList方法中doInBackground()调用。一切安好。notifyDataSetChanged()onPostExecute()

现在我的问题是,当我启动活动时,网格视图需要 5-10 秒的时间才能创建并以实体形式呈现给用户。我想知道是否有一种方法可以先显示带有文本信息的网格视图,然后再加载每个图像。这是否可能,因为它们都是以相同的方法创建的?

我还必须通知您,您可以从DisplayImage()我实现此延迟加载的方法中看到:ListView 中的图像延迟加载。它工作正常,但问题是它再次加载了整个视图。我想要做的是启动活动,首先加载标题,然后在完成下载后加载图像。使用这里的代码,它只是延迟加载网格视图的每个单元格包含的整个视图。我赢得了几秒钟,因为我没有像以前那样一次下载所有图像,但它仍然不是我要搜索的。

非常感谢。

0 投票
0 回答
1469 浏览

android - 带有圆形指示器和延迟加载图像的 viewpager 画廊

我想将一些图像从 web 加载到 viewpager (Lazyloading) 中,viewpager 具有圆形指示器。

我的意思是在加载图像之前,会显示一个简单的图像,并且在从网络加载图像之后,它们必须被替换。我在这里有一个带有圆形指示器的 viewpager 库,但不能将它用于延迟加载。我有一个延迟加载图像的教程,但它不是带有圆形指示器的 viewpager。

请帮忙。

0 投票
4 回答
314 浏览

android - 延迟加载onclick listview

我正在为列表视图执行延迟加载代码,其中我在 json 中获取文本和图像 url 并将它们放入列表视图中。

图像和文本都相应地显示为我想要的。

我面临的问题是当列表向下或向上滚动时,视图的索引会受到干扰。

假设我的列表中有 10 个元素,图像横向预览。最初我可以看到 4 个元素的 onclick 操作正常,但是当我向下滚动并单击第 7 个和第 8 个元素时,索引会受到干扰并导致空指针异常。

问题似乎与文本视图有关,因为我无法在列表的 onclick 上获得所需的文本。

如果我触摸第 6 个元素,我会得到第 7 个或第 8 个项目的文本。

0 投票
2 回答
8477 浏览

android - 用户的 whatsapp 应用程序如何检测其联系人头像的变化?

我正在浏览whatsapp应用程序,我注意到它第一次从服务器获取缩略图,将它们保存在缓存中,然后它从缓存而不是服务器中获取这些缩略图。(如位图延迟加载)。

到目前为止,我已经完成了位图延迟加载部分的实现。

但是我有一个问题如下:

当任何联系人更改其个人资料图片时,用户的 whatsapp 应用程序如何检测到该特定更改以及它如何仅更新该特定缩略图,导致应用程序应该从缓存中获取缩略图。

我对此一无所知。任何帮助表示赞赏。

编辑:

它是否使用推送通知来通知客户端应用程序更新相应的配置文件缩略图?

0 投票
2 回答
209 浏览

android - 如何在屏幕上收听 imageview?

我的布局中有很长的图标列表(大约 30 个),因此在 Android 2.3.3 中出现 OutOfMemory 错误。

我想做的是仅在必要时创建 Drawable 对象(图标在当前滚动条上可见)。

但是如果imageview在屏幕上,现在怎么办?我找不到这个的听众。

我的图标(png 文件)已经在 drawables 文件夹中。根本没有下载过程。

0 投票
1 回答
267 浏览

android - 我不确定如何使用异步任务进行延迟加载?

对于反对的选民,如果你能提供一个可行的解决方案会更好,不是每个问题都需要附上代码,如果一个人不清楚概念,你怎么能指望他为你提供他玩过的代码和??

这基本上是一个概念性问题,我尝试阅读文档,但仍然无法更好地理解该主题。我不知道我应该如何使用异步任务....我之前使用过异步任务来显示来自互联网的图像,但我仍然对它的工作原理感到困惑。我知道它的 3 个常用功能。IE

1.onPreExecute() 2.doinBackground() 3.onPostExecute()

现在我很困惑,如果我必须填充一个列表应该怎么做?我知道填充部分应该在 doinbackground() 中完成,但在那之后我应该返回结果(从后台),在整个列表被填充后,到 onPostExecute() 并期望列表将被加载到listview 异步
或者我应该部分返回结果(比如一个新项目已添加到列表中,立即将其发送到 onpostexecute 而不等待整个列表生成,显示并重复迭代)到 onpostExecute( )??并通过这样做自己管理惰性负载?