【问题标题】:How to change .navigationBarTitle alignment to trailing for iOS in SwiftUI (or, make it Right To Left)如何在 SwiftUI 中将 .navigationBarTitle 对齐方式更改为 iOS 的尾随(或者,使其从右到左)
【发布时间】:2019-10-15 09:48:32
【问题描述】:

我使用UINavigationBar.appearance().titleTextAttributesUINavigationBar.appearance().backgroundColor 修改了navigationBar 的标题字体、颜色和背景。

但是我找不到任何属性来将 navigationBarTitle 对齐设置为右对齐(尾随)。

另外,我什至尝试过.navigationBarTitle(Text("Title").multilineTextAlignment(.leading)) 修饰符,但 SwiftUI 不接受它。任何解决方案将不胜感激。

【问题讨论】:

  • this 等关于此主题的多个参考资料中,很明显Alignment 无法更改导航栏标题。
  • @nayem 事实证明它可以改变。我回答了我的问题。

标签: swiftui navigationbar


【解决方案1】:

可以通过给view下面的修饰符从右到左更改它们:

.environment(\.layoutDirection, .rightToLeft)
.flipsForRightToLeftLayoutDirection(true)

它也可以用于导航栏:

NavigationView {

  VStack {

//Your views ...

    .navigationBarTitle(Text("Title"))
  }

}
.environment(\.layoutDirection, .rightToLeft)
.flipsForRightToLeftLayoutDirection(true)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-17
    • 2018-06-23
    • 1970-01-01
    • 1970-01-01
    • 2019-10-26
    • 2018-07-01
    • 2020-02-07
    相关资源
    最近更新 更多