【问题标题】:Fresco Library Issues壁画图书馆问题
【发布时间】:2015-10-16 15:48:34
【问题描述】:

我正在使用 Fresco 库将图像和 gif 加载到我的应用程序中。我在 Fresco 中遇到的最大限制是必须设置布局的宽度和高度。所以我已经像这样设置了我的简单drawee视图:

 <com.facebook.drawee.view.SimpleDraweeView
            android:id="@+id/image"
            android:layout_marginTop="@dimen/feed_item_margin"
            android:scaleType="fitCenter"
            fresco:actualImageScaleType="fitStart"
            android:layout_below="@+id/content_header"
            android:layout_width="match_parent"
            android:layout_height="@dimen/texture_view_height"
            fresco:placeholderImage="@drawable/placeholder"
            />

我的问题是,如果图像高度大于宽度,则图像右侧有很多空白(见附件),但是高度很好

如果实际图像的高度小于宽度(见附件),则可能会发生这种情况,因此此处由于固定高度为 250dp,因此图像下方有很多空白。

我已经在 SimpleDrawerView 中使用了不同的 scaleTypes,但似乎没有一个可以按照我想要的方式显示。

我想知道是否有人对 Fresco 有很多经验?我已经开始使用它来加载 gif,因为我遇到了 Glide 的问题。

如果有人能提供帮助,我将不胜感激。

仅供参考,这些图像是从服务器流式传输的,我无法控制这些图像

【问题讨论】:

  • fresco:actualImageScaleType="fitStart" 尝试删除它。
  • @vipul_asri 我已经尝试过了,它只是截断了图像......这是一个非常糟糕的功能......
  • 你试过android:gravity="center"
  • 这是 Fresco 的一个限制......从我能收集到的数据来看,这是一个非常糟糕的限制
  • 你绝对应该考虑接受你收到的答案。

标签: android image fresco


【解决方案1】:

我是 Fresco 库的作者之一,我可能可以提供帮助。根据您的问题,我实际上不知道您希望如何显示您的图像。

首先,我强烈建议您先阅读documentation。你会发现 android:scaleType 被 Fresco 完全忽略了,你应该改用 fresco:actualImageScaleType

我的问题是,如果图像高度大于宽度,图像右侧会留下很多空白(见附件),但是高度很好。

如果高度合适,应该如何填充额外的水平空间?这些是唯一可能的选项:

  • 裁剪图像(例如actualImageScaleType=centerCrop
  • 扭曲图像以填满所有空间 (actualImageScaleType=fitXY)
  • 图片的一侧或两侧有空白区域(例如actualImageScaleType=fitCenter)。

如果实际图像的高度小于宽度(见附件),则可能会发生这种情况,因此此处由于固定高度为 250dp,因此图像下方有很多空白。

也许以下内容会让您满意。设置布局参数如下:

android:layout_width="match_parent"
android:layout_height="wrap_content"
fresco:viewAspectRatio="1.33"
fresco:actualImageScaleType="fitCenter"

这将使drawee视图具有父视图的宽度,默认情况下宽高比为1.33(4:3)。 然后,您可以通过编程设置纵横比以匹配图像之一,正如我在另一个 answer 中解释的那样。这将使drawee视图高度根据图像动态调整。

【讨论】:

  • 我也在使用 fresco 在列表视图中显示图像。但是,我有一个担心。当我将ActualImageScaleType 设置为CENTER_CROP 并在缩放之后。图像高度变得小于simpledrawee 高度,在我的 simpledrawee 视图中留下了空格。 我怎样才能获得缩放图像的高度并将其设置为我的简单 drawee 的高度查看?
  • 不应该这样。如果指定了 CENTER_CROP 比例类型,则视图中绝不应该有空格。你能发布你正在使用的屏幕截图和代码示例吗?
  • 这是我的问题和代码。 stackoverflow.com/questions/34874463/…
  • 当您在上面的链接中查看我的问题时,请告诉我。我迫切需要帮助。
猜你喜欢
  • 2011-01-26
  • 1970-01-01
  • 1970-01-01
  • 2014-10-29
  • 2017-08-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多