问题标签 [fresco]
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.
android - Android fresco如何获取保存缓存回调?
我有一个关于 android fresco 库的问题。你们知道当文件保存在缓存中时如何获取回调吗?通常,我们可以从缓存中获取文件:
但是,如果我把它放在 onCreate() 函数中,它会崩溃,因为文件还没有在缓存中。你们知道壁画保存完成后我是如何得到回调的吗?是数据订阅者吗?你们能举个例子吗?我阅读了文档,但我无法弄清楚。
谢谢。
android - 如何让 Fresco 显示完整质量的图像
我正在使用 Fresco 显示来自本地驱动器的图像。我的问题是 Fresco 不会在 DraweeView 中显示完整的高质量图像,而是显示质量非常低的微小图像,如下所示:
(我也看过这张照片,actualImageScaleType="fitCenter"
所以不仅仅是它们是小尺寸的高质量照片,它们实际上质量很差,分辨率也很低。)
这些图像是由手机的 8 兆像素相机拍摄的,因此质量很好。我也在我的电脑上看过它们,并看到了高质量的 8 兆像素图像。所以我一定是做错了什么,并以某种方式显示了低质量的图像。
在布局 xml 我有以下定义 SimpleDraweeView 元素:
然后在代码中:
Fresco 需要做什么才能显示高分辨率/高质量图像?
更新:这些图像没有被压缩,只是通过fileOutputStream.write(imageByteArray)
. 现在如果我改变它并使用压缩图像bitmap.compress(Bitmap.CompressFormat.JPEG, 75, bufferedOutputSteam)
,一个高质量的图像将显示在 DraweeView 中。但是,这样应用程序会大大减慢速度。
android - Fresco:使用 Drawee 中显示的当前图像作为下一个请求的占位符
我在同一个上按顺序播放多个图像SimpleDraweeView
,问题是在提交新的 imageURI 请求时,SimpleDrweeView
将删除当前显示的图像并将其替换为空,直到下载 URI。所以它会在播放序列中留下空白(你可以想到我正在尝试做的是使用本地照片的卡通动画)。我希望 SimpleDrweeView 保持当前图像不变,直到下载新图像,然后在准备好时交换它。
我尝试使用这张票中的低分辨率/高分辨率方案将旧的 uri 作为占位符,但这不起作用(与以前的效果相同)。
这就是我现在所拥有的:
这是我迄今为止尝试过的(没有用):
android - Facebook Fresco 使用 wrap_content
我有一堆我想使用 fresco 加载的可绘制对象,我想wrap_content
为这些图像使用大小,我怎样才能在 xml 中使用 fresco 来做呢?或者如果 xml 是不可能的,你如何在代码中做到这一点?
除非我设置固定大小,否则上述代码不起作用。
android - Fresco - 取消预取请求
在我的应用程序中,我预取了图像,因此当用户使用prefetchToBitmapCache
. 现在,当用户应用过滤器时,这些预取仍保留在管道中并减慢新图像的加载速度。
我是如何预取的:当使用向下滚动图像时,我在' 值之后预取X个图像。LinearLayoutManager.findLastVisibleItemPosition()
当用户应用过滤器时,我需要一种方法来取消所有这些预取。有没有办法做到这一点或更好的预取方式?
android - 为什么 fresco 选择不在 android 5.0 或更高版本的 ashmem 中放置位图
正如 git hub 上的 Fresco 项目所说:“在 Android 4.x 及更低版本中,Fresco 将图像放在 Android 内存的一个特殊区域中。这可以让您的应用程序运行得更快 - 并且更少地遭受可怕的 OutOfMemoryError。”
从这个答案中,我知道它使用 ashmem 来放置位图。
我的问题是:为什么 fresco 不将位图放在 android 5.0 或更高版本的 ashmem 中?Android 是否会更改某些系统功能并将其禁用?
android - 如何在自定义视图中使用 Fresco?
我正在构建一个画布游戏,我直接在画布上绘制图像。
如何使用Fresco来加载这些位图?
android - fresco Postprocessor:java.lang.RuntimeException: Canvas: 试图使用回收的位图
12-21 11:01:14.045: E/AndroidRuntime(6819): java.lang.RuntimeException: Canvas: 试图使用回收的位图 android.graphics.Bitmap@4180103 12-21 11:01:14.045: E/AndroidRuntime( 6819): 在 android.graphics.Canvas.throwIfCannotDraw(Canvas.java:1084) 12-21 11:01:14.045: E/AndroidRuntime(6819): 在 android.view.GLES20Canvas.drawBitmap(GLES20Canvas.java:844) 12 -21 11:01:14.045: E/AndroidRuntime(6819): 在 android.graphics.drawable.BitmapDrawable.draw(BitmapDrawable.java:490) 12-21 11:01:14.045: E/AndroidRuntime(6819): 在 android .widget.ImageView.onDraw(ImageView.java:1037) 12-21 11:01:14.045: E/AndroidRuntime(6819): 在 android.view.View.draw(View.java:14465) 12-21 11:01 :14.045: E/AndroidRuntime(6819): 在 android.view.View.getDisplayList(View.java:13362) 12-21 11:01:14.045: E/AndroidRuntime(6819): 在 android.view.View。getDisplayList(View.java:13404) 12-21 11:01:14.045: E/AndroidRuntime(6819): 在 android.view.View.draw(View.java:14182) 12-21 11:01:14.045: E/ AndroidRuntime(6819): 在 android.view.ViewGroup.drawChild(ViewGroup.java:3103) 12-21 11:01:14.045: E/AndroidRuntime(6819): 在 android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940 ) 12-21 11:01:14.045: E/AndroidRuntime(6819): 在 android.widget.AbsListView.dispatchDraw(AbsListView.java:2458)dispatchDraw(AbsListView.java:2458)dispatchDraw(AbsListView.java:2458)
我建立了一个新类并使其扩展BasePostprocessor
,我什么都不做。但是当它运行时,示例会抛出上述异常;我只是imagepipeline
用来下载图像,不要使用simpledraweeview
.
android - 图像未在 Fresco 中加载
我正在尝试在 Fresco 中加载图像,但图像似乎没有加载。当我添加占位符视图时,占位符显示。
请注意,我在应用程序中初始化 Fresco,并且在清单中确实有互联网使用情况。
简单绘图视图
方法调用 loadImg
初始化
样本日志
显现
android - ListView项目显示错误的SimpleDraweeView
我SimpleDraweeView
在ListView
项目中使用过。如果 header url 不为 null,则显示来自网络的图像,或者显示来自本地 drawable 的默认图像。
代码如下:
当我滚动ListView
到最后时,SimpleDraweeView
显示与最后一个屏幕图像数据相同的图像。有人有同样的问题吗?