ios - 如何为 UIButton 设置 UIBackgroundConfiguration?
问题描述
我正在努力更改 UIButton 的背景属性。可以使用 Interface Builder 中的“后台配置”设置轻松修改它们:
但我不明白如何以编程方式设置它们。
例如,我尝试这样做:
UIBackgroundConfiguration * config = [UIBackgroundConfiguration listPlainCellConfiguration];
[config setStrokeColor: UIColor.labelColor];
但是我应该在哪里分配这个“配置”值?对于 UIButton 对象,没有任何类似于 'button.backgroundConfiguration' 属性或任何类似的东西。
注意:UIButton 对象的“配置”属性在代码(Objective C、Mac Catalyst、iOS 15)中不可用,尽管文档声明并附有屏幕截图。很高兴知道为什么会这样。
解决方案
后台配置是 UIButtonConfiguration (按钮的configuration
)的一部分。
这是配置在故事板中创建的按钮的示例:
UIButtonConfiguration * con = self.button.configuration;
[con setTitle: @"Hello"];
UIBackgroundConfiguration * back = con.background;
[back setStrokeColor: UIColor.labelColor];
[back setStrokeWidth: 3];
[back setBackgroundColor: [UIColor redColor]];
self.button.configuration = con;
结果:
推荐阅读
- swift - 为什么延迟动画与for循环不同步?
- python - 在 Python 脚本中忽略 BigQuery use_avro_logical_types
- asp.net-core - 使用 IdentityServer4 的 Swagger UI 授权返回 Invalid redirect_uri
- sql - 在 SSIS 导出包中,如何重命名带有时间戳的目标 excel 文件?
- php - 为什么我在使用 curl 下载图像时得到 0 kb 的文件?
- deep-learning - PyTorch GRU 中隐藏状态的层顺序返回
- excel - 使用循环删除用户窗体中的图像控件
- python - 使用 opencv 加载的 Torch cyclegan 模型不输出所需的图像
- android - Kotlin - Context.filesDir 在模拟器中崩溃
- ubuntu - 网站 https://example.com 的安全连接失败,但适用于 http://example.com