【发布时间】:2020-05-09 22:35:30
【问题描述】:
更新
我想在导航栏中的后退按钮中更改箭头和文本之间的偏移量。在我设置之前它工作得很好
UINavigationBar.appearance().standardAppearance = newAppearance
这里是完整的代码:
let appearance = UINavigationBar.appearance()
let standardAppearance = UINavigationBarAppearance()
standardAppearance.configureWithOpaqueBackground()
standardAppearance.backgroundColor = someColor
standardAppearance.titleTextAttributes = [NSAttributedString.Key.foregroundColor: titleColor]
standardAppearance.largeTitleTextAttributes = [NSAttributedString.Key.foregroundColor: titleColor]
standardAppearance.shadowColor = navigationShadowColor
// if remove theses 2 line, offset code works!!!
appearance.standardAppearance = standardAppearance
appearance.scrollEdgeAppearance = standardAppearance
// code to set offset
UIBarButtonItem
.appearance()
.setBackButtonTitlePositionAdjustment(
UIOffset(horizontal: -20, vertical: 0),
for: .default)
【问题讨论】:
-
您没有设置/使用
UINavigationBar.prefersLargeTitles,因为上述外观仅适用于标准标题吗? -
@Asperi 我检查了代码,发现它设置在某个地方,但是在 viewDisappear 上它被关闭了,但我会尝试在任何地方关闭它(我今天或明天会这样做) .您能否将其发布为答案,以便帮助我将您的答案标记为正确?
-
hack - 相反,您在图像的一侧添加了一些空间。或者在文本中添加所需的空格。
-
我需要负间距
-
我更新了代码,因为我找到了导致问题的行,但不知道如何解决它“appearance.standardAppearance = standardAppearance”
标签: ios swift xcode uibarbuttonitem uiappearance