FirstButton是一个自定义类型的UIButton.我以编程方式将它们中的三个跨表的每个单元格放置,因此:

[firstButton setImage:markImage forState:UIControlStateNormal];
[firstButton setContentMode:UIViewContentModeScaleAspectFit];
[cell.contentView addSubview:firstButton];

在其他地方,我把它告诉了clipToBound.我得到的是图像中心正方形的裁剪,而不是纵横比zoom 的渲染.我try 了很多方法,包括在firstButton.imageView上设置mode属性,似乎也不起作用.

推荐答案

我也有同样的问题.我知道这个问题有点老了,但我想提供一个清晰而正确的答案,以便其他人(像我)在搜索结果中弹出这个问题时可以节省一些时间.

我花了一些时间寻找和试验,但我找到了解决方案.只需设置UIButton内部的"隐藏"ImageView的ContentMode即可.

[[firstButton imageView] setContentMode: UIViewContentModeScaleAspectFit];
[firstButton setImage:[UIImage imageNamed:imageName] forState:UIControlStateNormal];

也许这就是丹·雷在他公认的答案中暗示的,但我怀疑不是.

Ios相关问答推荐

如何以最可靠的方式删除文本视图中的额外页边距?

SwiftUI@Observable不跟踪父类属性中的更改以更新视图

IOS-获取本地化系统映像

flutter中实现自定义底部导航栏

AVAudioRecord 没有音频

在 Swift 项目中使用情节提要加载 obj-c 文件

如何使用 Rxswift 处理程序最喜欢的按钮

无法在 CollectionView 中禁用部分弹跳 - 组合布局

如何擦除 Swift 中的 Core Graphics Context 绘图?

如何使用 AppIntents 在 SwiftUI 应用程序中打开特定视图

iOS 是否支持使用独立 .xib 文件创建的嵌套自定义子视图?

Swiftui为什么在点击第二行之前背景不起作用

.onChange(of: ) 一次用于多个 @State 属性?

使用 @MainActor 更新 UI 的适当策略是什么?

警告:iPad:Icon-72.png:图标尺寸(0 x 0)

iPhone iOS 无法正确显示 box-shadow

如何在 Swift 中将新单元格插入 UITableView

iOS:如何从 URL 调试新启动应用程序

在 Objective-C 中将所有文本转换为小写

什么是强属性属性