【问题标题】:Full Image not loading on ImageView inside UICollectionView Cell Swift 4UICollectionView Cell Swift 4内的ImageView上未加载完整图像
【发布时间】:2018-07-17 13:16:51
【问题描述】:

我使用 Autoresizing 为所有设备制作适当大小的图像。在 UICollectionView 单元格内放置一个 UIView。在 UIView 上,我放置了一个具有相同视图宽度的 ImageView 和另一个具有一些内容的视图。现在我对所有设备使用自动调整大小但是 iPhone 6s Plus 和 iPad 的图像大小不同。我随所有内容模式而变化,但它保持不变。我的 CollectionViewLayout 代码如下。

     func collectionView(_ collectionView: UICollectionView,
                    layout collectionViewLayout: UICollectionViewLayout,
                    sizeForItemAt indexPath: IndexPath) -> CGSize {

    if collectionView == collection || collectionView == collection_favourite{


            return CGSize(width: display_width / 2, height: 290)

        }

    }

当我使用调试视图层次结构时,似乎我的 ImageView 调整了我想要的大小(显示在下面的带有蓝色阴影的图像中是我的 imageView)但是显示在它上面的图像偏转,或者没有正确显示。我没有知道如何处理它,我做了很多改变但没有解决。请帮助得到这个。提前谢谢

这是我的故事板的屏幕截图

在此处输入图片说明

【问题讨论】:

  • 尝试您的 uiimageview 内容模式以适应宽高比。
  • 什么是 display_width ?
  • 你能分享一下集合视图单元的故事板/XIB截图吗?
  • @Hardik Thakkar 我的显示宽度 = UIScreen.main.bounds.width
  • @Mr. Tann 我试过了,不行

标签: ios uiimageview swift4 uicollectionviewcell autoresize


【解决方案1】:

什么是 UIImageview 的内容模式?你在 cellForItemAtIndexPath 中调用 layoutIfNeeded 吗?

【讨论】:

  • 或者你应该设置 UIImageview 的拥抱小于 UIView 然后设置 clipsTobounds 属性是。我希望这个解决方法可以帮助你。
  • 我使用Scale填充内容模式,也尝试了其他模式。而且我还根据您的上述评论进行了检查,但它不起作用。
  • 我不知道 LayoutIfNeeded 。分享一些信息或代码以将其与集合视图、其单元格、视图、图像视图一起使用。
  • 根据您的描述,UIimageview 大小是正确的,但问题出在 UIimage 对吗?您可以将 Uiimageview 的背景颜色设置为红色或其他颜色,以确认尺寸是否合适。如果 UIImageview 的大小不同,请设置 Size 常量以调试此问题。如果这些都可以在 cellForRow 中将剪辑设置为 Uiimageview 的“是”尝试这些步骤,您将找到问题的原因。
  • 是的,图像不是 imageView 的问题,而且我尝试更改图像视图的颜色并保持其大小不变,但问题保持不变,但发现图像以固定高度和宽度显示为我为 imageView 设置了故事板。
猜你喜欢
  • 1970-01-01
  • 2021-01-23
  • 2020-08-27
  • 1970-01-01
  • 2015-12-29
  • 2016-09-28
  • 1970-01-01
  • 2016-08-19
  • 1970-01-01
相关资源
最近更新 更多