大家好,??我是新来的,所以我希望事情就是这样!
众所周知,iOS 13 引入了 UI 更改。我们有一个正在生产的应用程序,我最近醒来(可能有点太晚了哈哈),当我在新更新的 iOS 13 设备上编译和启动它时,我意识到有一些工作要做!??我通过不启用它来处理暗模式,我处理了我的模态,但有一件事我似乎无法像 iOS 12 那样做,那就是我的导航栏 UI。
我们使用自定义的后退按钮图像,经过几个小时的战斗,我终于成功了,但除了第一次之外,每次都可以。我第一次总是使用默认图标,然后当我回到同一个控制器时,就可以了。
这是一张照片(在问题的开头)所以你可以理解我的代码!?我知道可以将 Appearance 用于带有 « whenContained » 的特定 VC,但我似乎无法弄清楚,因为它全部在导航控制器中,我不知道如何区分它们。
fileprivate func navigationBarWithBackgroundColor(_ backgroundColor: UIColor, TintColor tintColor: UIColor, displayBackButtonIfNeeded: Bool, BackImage imageName:String, displayShadowBar: Bool = false) {
let backButtonImage = UIImage(named: imageName)
if #available(iOS 13.0, *) {
let appearance = UINavigationBarAppearance()
appearance.backgroundColor = backgroundColor
appearance.titleTextAttributes = [.foregroundColor: tintColor]
appearance.setBackIndicatorImage(backButtonImage, transitionMaskImage: backButtonImage)
appearance.shadowImage = displayShadowBar ? UIImage(named:"") : UIImage()
let back = UIBarButtonItemAppearance()
// hide back button text …Run Code Online (Sandbox Code Playgroud) 我\xe2\x80\x99是新的,所以我希望\xe2\x80\x99是这里事情的方式!
\n\n就像y\xe2\x80\x99都知道的,iOS 13引入了UI变化。我们有一个正在生产的应用程序,我最近醒来(可能有点太晚了,哈哈),当我在新更新的 iOS 13 设备上编译并启动它时,当我意识到还有一些工作需要完成时,\xe2\x80\x99s做 !我通过不启用它来处理黑暗模式,我处理了我的模态,但有一件事我可以\xe2\x80\x99t似乎像iOS 12一样,它\xe2\x80\x99是我的导航栏UI。
\n\n我们使用自定义的后退按钮图像,经过几个小时的战斗,我终于成功了,但除了第一次之外,每次都可以\xe2\x80\x99。我第一次总是会使用默认图标,然后当我回到同一个控制器时,它\xe2\x80\x99就可以了。我使用的函数是在viewWillAppear中调用的。
\n\n这是我的代码!我知道 \xe2\x80\x99s 可以在包含 \xc2\xbb 时使用 \xc2\xab 的特定 VC 外观,但我可以 \xe2\x80\x99t 似乎能弄清楚,因为它 \xe2\x80\x99s 都在导航控制器和我不知道如何区分它们。
\n\nfileprivate func navigationBarWithBackgroundColor(_ backgroundColor: UIColor, TintColor tintColor: UIColor, displayBackButtonIfNeeded: Bool, BackImage imageName:String, displayShadowBar: Bool = false) {\n\nlet backButtonImage = UIImage(named: imageName)\n\nif #available(iOS 13.0, *) {\n\n let appearance = UINavigationBarAppearance()\n appearance.backgroundColor = backgroundColor\n\n appearance.titleTextAttributes = [.foregroundColor: tintColor]\n appearance.setBackIndicatorImage(backButtonImage, transitionMaskImage: backButtonImage)\n appearance.shadowImage = displayShadowBar ? UIImage(named:"") : UIImage()\n\n let back = UIBarButtonItemAppearance()\n // hide back button …Run Code Online (Sandbox Code Playgroud)