我有一个列表,我使用recyclerView来显示。列表中的每一行都显示从远程服务器下载的映像。为了加快列表的显示,我在后台下载图像。每次bind()想要显示图像时,我都会调用一个方法来启动一个下载图像的异步任务,而在onPostExecute()方法中,我调用图像的setImageBitmap()来显示下载的位图。
问题如下
当我向下滚动时,recyclerView会加载更多适合屏幕的图像,当调用setImageBitmap()时,列表会跳起来,这样列表中的最后1或2项几乎不会显示。
当我禁用对setImageBitmap()的调用时,显示最后的项目(列表现在没有图像),并在列表中上下滚动都没有问题。
当我向下滚动非常慢时,问题也出现了。我将屏幕限制为仅显示4个项目,当我向下滚动到第6个或第7个项目时,显示屏会跳转并再次从第2项到第5项显示。
那里发生了什么,如何让显示屏平滑滚动而不会跳过?
答案 0 :(得分:0)
这里有一个问题,那就是你的回收者在充气时的视图大小为X,当你加载你的图像时,大小会发生变化,但是opts = list("algorithm"="NLOPT_LN_COBYLA",
"xtol_rel"=1.0e-8, "maxeval"= 10000)
lb = vector("numeric",length= length(my.data.var))
result <- nloptr(my.data.var,eval_f = Error.func,lb=lb,
ub = c(Inf,1,1,1,1,1,Inf,1,1,1,1,1,Inf,1,1,1,1,1,Inf,1,1,1,1,1),eval_g_ineq=constraint.func,opts = opts)
并不知道这个变化,因此它赢得了#39 ; t更新你的观点。
您应该发布一段代码,这将有助于澄清。