gpt4 book ai didi

ios - 从右到左导航中的滑动方向错误

转载 作者:行者123 更新时间:2023-12-04 02:09:08 25 4
gpt4 key购买 nike

当手机具有从右到左的本地化时,我禁用 View 旋转(选择希伯来语并且所有 View 从左到右更改其位置时的过程):

if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"9.0")){
if (RightToLeft) {
[[UIView appearance] setSemanticContentAttribute:UISemanticContentAttributeForceLeftToRight];
[[UINavigationBar appearance] setSemanticContentAttribute:UISemanticContentAttributeForceLeftToRight];
}
}

一切看起来都很好,但我需要从右向左滑动才能返回到上一个 View Controller 。如何设置从左到右的滑动方向以在 ViewController 之间导航?

最佳答案

我终于为那些子类化了 UINavigationController 类的人找到了一个。你应该这样做:

final class TestNavigationController: UINavigationController, UINavigationControllerDelegate {

override func viewDidLoad() {
super.viewDidLoad()
self.delegate = self
}

func navigationController(_ navigationController: UINavigationController, didShow viewController: UIViewController, animated: Bool) {
navigationController.view.semanticContentAttribute = UIView.isRightToLeft() ? .forceRightToLeft : .forceLeftToRight
navigationController.navigationBar.semanticContentAttribute = UIView.isRightToLeft() ? .forceRightToLeft : .forceLeftToRight
}
}

extension UIView {

static func isRightToLeft() -> Bool {
return UIView.appearance().semanticContentAttribute == .forceRightToLeft
}
}

动态地,您的 NavigationController 将适应强制语义内容属性。我希望它有所帮助。如果您有任何问题,请告诉我。

关于ios - 从右到左导航中的滑动方向错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40484061/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com