我正在使用 MDCChipView 在 UICollectionView 内显示芯片我有一个 512x512 像素的图像,我需要将大小设置为 50x50,但无论我做什么设置,模拟器内的大小始终是 512x512。
我在里面做了这个设置:
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell
这是对我不起作用的糟糕教程: MDCChipView
简而言之,这个库应该类似于 Android 的芯片。ChipView 包含一个名为 imageView 的 ImageView,它应该包含 Chip 的图像。
我试图:
- 将框架设置为芯片图像:
configChip.imageView.frame = CGRect(x: 0, y: 0, width: 50, height: 50)
- 将框架设置为 MDCChipView:
configChip.frame = CGRect(x: 0, y: 0, width: 50, height: 50)
- 缩放图像
UIGraphicsImageRenderer
:这会导致奇怪的行为,第二个芯片被绘制在包含图像的芯片上 - 将芯片之间的高度约束设置为精确常数 50:不起作用
- 将高度约束设置
chip.Image
为精确常数 50:不起作用 - 设置芯片和之间的高度相等
chip.Image
(保持点 4. 和 5. 的约束) - 图片集
contentMode
(我都试过了) - 裁剪图像的边界:仅显示图像的切碎的一小部分
- 设置
translatesAutoresizingMaskIntoConstraints
为false
芯片和图像(不工作) - 使用尺寸适合图像:
sizeThatFits(CGSize(width: 50, height: 50))
我尝试的一切(不包括第 3 点),我得到相同的结果。在我看来,它正在做一些事情,将图像调整为加载图片的确切大小。