如果可以避免的话,我不想使用子视图.我想要一个UIButton,里面有背景图像、文字和图像.现在,当我这样做时,图像在文本的左侧.背景图像、文本和图像都具有不同的高亮显示状态.

推荐答案

尽管一些建议的答案非常有创意,非常聪明,但最简单的解决方案如下:

button.semanticContentAttribute = UIApplication.shared
    .userInterfaceLayoutDirection == .rightToLeft ? .forceLeftToRight : .forceRightToLeft

就这么简单.作为额外奖励,图像将在从右到左的区域设置中位于左侧.

EDIT:这个问题已经问过几次了,这里是iOS 9 +.

Ios相关问答推荐

第三方框架的iOS隐私声明

如何在iPhone 15上消除.NET Maui中状态栏和页面之间的差距

如何在SwiftUI中扩展双击的可检测区域?

withTaskGroup不适用于CLGeocoder

如何创建装饰视图?

错误地提取问题的答案选项

uikit中如何触发swiftui功能

弹出视图后使所有背景 UI 模糊

Xcode 13.4.1 (13F100)Command CodeSign 失败,退出代码非零我应该删除哪个证书?

swiftUI中的剪辑形状无法使用旋转效果

通过MatchedGeometryEffect向上滑动视图

在 tableview 中下载图像缩略图时如何提高滚动性能

在 Swift 中按下返回键时在文本字段之间切换

如何在 SwiftUI 中检测 TextField 的实时变化?

Xcode 项目格式:3.1、3.2、6.3 和 8.0 有什么区别?

用 PC 调试 ipad safari

在 iPhone 中将 UIViewController 显示为弹出窗口

~= Swift 中的运算符

Xcode / iOS模拟器:手动触发重大位置更改

如何找到 UILabel 的实际行数?