gpt4 book ai didi

ios - 在 iOS 13 上隐藏导航栏分隔线

转载 作者:行者123 更新时间:2023-12-04 17:29:05 24 4
gpt4 key购买 nike

我有一个带有大标题导航栏的 View Controller 。当我按下 Controller 时,仅在 iOS 13 上导航栏下方可见一条线。我该如何解决?

我已经在 Stack 上尝试了几种解决方案,但它们都没有像这样工作:

let navigationBar = navigationController?.navigationBar
let navigationBarAppearence = UINavigationBarAppearance()
navigationBarAppearence.shadowColor = .clear
navigationBar?.scrollEdgeAppearance = navigationBarAppearence

使用此代码段,即使我将“清除颜色”更改为红色,它也仅在第一个 Controller 中可见,在推送的 Controller 中它始终为灰色。

我该如何解决?

编辑

我已经解决了:

if #available(iOS 13.0, *) {
let appearance = UINavigationBarAppearance()
appearance.shadowColor = nil
navigationController?.navigationBar.standardAppearance = appearance
}

最佳答案

import UIKit

public protocol HideableHairlineHelper {
func hideHairline()
func showHairline()
}

extension HideableHairlineHelper where Self: UIViewController {

public func hideHairline() {
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.toolbar.setShadowImage(UIImage(), forToolbarPosition: .any)
}

public func showHairline() {
self.navigationController?.navigationBar.shadowImage = nil
}
}

关于ios - 在 iOS 13 上隐藏导航栏分隔线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61297266/

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