Tengo una configuración de control de navegación personalizado en mi aplicación, que modifica navigationBars titleTextAttributes, tintColory otros en función de diferentes escenarios.
Al ejecutar la aplicación en iOS 13, la backBarButtonItemflecha tenía el color azul predeterminado. El depurador de la vista mostró que solo los UIBarButtonItems UIImageViewtenían este tinte azul.
Lo que terminé haciendo fue configurar navigationBar.tintColordos veces para que cambiara el color ...
public class MyNavigationController: UINavigationController, UINavigationControllerDelegate {
    public var preferredNavigationBarTintColor: UIColor?
    override public func viewDidLoad() {
        super.viewDidLoad()
        delegate = self
    }
    public func navigationController(_ navigationController: UINavigationController, willShow viewController: UIViewController, animated: Bool) {
        // if you want to change color, you have to set it twice
        viewController.navigationController?.navigationBar.tintColor = .none
        viewController.navigationController?.navigationBar.tintColor = preferredNavigationBarTintColor ?? .white
        // following line removes the text from back button
        self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: .plain, target: nil, action: nil)
    }
La parte más extraña al buscar una solución fue el resultado inconsistente, lo que me hace pensar que está relacionado con ver el ciclo de vida y / o las animaciones de apariencia o el caché de Xcode :)
                 
                
.noneonil, simplemente le doy un color después de configurar la apariencia y simplemente funciona