forceRightToLeft 时 UISwitch 太慢
UISwitch too slow when forceRightToLeft
我的应用程序使用英语和阿拉伯语。
我的 AppDelegate 中有这个:
if isArabic {
UIView.appearance().semanticContentAttribute = .forceRightToLeft
}
当 Arabic(forces elements to go right-to-left)
时,所有 UI 元素似乎工作正常,除了 UISwiftch
.
它可以工作,但速度太慢,它会切换,然后在一两秒后根据 ON/OFF State
改变颜色。
UISwitch 没有更多代码,除了这个:
@IBOutlet weak var mySwitch: UISwitch!
,所以我不知道是什么原因导致了这个奇怪的问题。
我发现的修复:
即使整个应用程序在阿拉伯语中被强制从右到左,我也强制从左到右我的 UISwitch。您可以在 viewDidLoad
中完成
mySwitch.semanticContentAttribute = .forceLeftToRight
On还是On,Off还是Off,一切正常,UISwitch在屏幕的左侧,因为阿拉伯语时整个屏幕都被迫离开,那也可以。现在唯一的区别是 On
状态在您向左滑动开关时处于活动状态(如英语),而不是向右滑动。但这几乎是不知不觉的,none 注意到“hack”:)
如果有人更喜欢使用情节提要来减少代码,只需更改 Switch 的属性检查器中的语义 属性(或任何视图,因为它是 UIView 属性)
我的应用程序使用英语和阿拉伯语。
我的 AppDelegate 中有这个:
if isArabic {
UIView.appearance().semanticContentAttribute = .forceRightToLeft
}
当 Arabic(forces elements to go right-to-left)
时,所有 UI 元素似乎工作正常,除了 UISwiftch
.
它可以工作,但速度太慢,它会切换,然后在一两秒后根据 ON/OFF State
改变颜色。
UISwitch 没有更多代码,除了这个:
@IBOutlet weak var mySwitch: UISwitch!
,所以我不知道是什么原因导致了这个奇怪的问题。
我发现的修复:
即使整个应用程序在阿拉伯语中被强制从右到左,我也强制从左到右我的 UISwitch。您可以在 viewDidLoad
mySwitch.semanticContentAttribute = .forceLeftToRight
On还是On,Off还是Off,一切正常,UISwitch在屏幕的左侧,因为阿拉伯语时整个屏幕都被迫离开,那也可以。现在唯一的区别是 On
状态在您向左滑动开关时处于活动状态(如英语),而不是向右滑动。但这几乎是不知不觉的,none 注意到“hack”:)
如果有人更喜欢使用情节提要来减少代码,只需更改 Switch 的属性检查器中的语义 属性(或任何视图,因为它是 UIView 属性)