Как да промените цвета и шрифта на лентата за навигация и барбутонита в модален изглед на активност в UIActivityViewController?

Зададох лентата на състоянието на светло съдържание, като зададох view-controller based status bar в Info.plist на No, тъй като използвам тъмен цвят за лентата за навигация. Успях да задам цвета на лентата за навигация и цвета и шрифта на елемента на бутона на лентата, използвайки следния код в AppDelegate.swift -

UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent
    UINavigationBar.appearance().barTintColor = UIColor.darkGrayColor()
    UINavigationBar.appearance().translucent = false


    if #available(iOS 8.2, *) {
        UIBarButtonItem.appearance().setTitleTextAttributes([NSFontAttributeName : UIFont.systemFontOfSize(16.0, weight: UIFontWeightThin)], forState: UIControlState.Normal)
        UINavigationBar.appearance().titleTextAttributes = [NSFontAttributeName : UIFont.systemFontOfSize(23.0, weight: UIFontWeightThin), NSForegroundColorAttributeName: UIColor.whiteColor()]
    } else {
        // Fallback on earlier versions
    }

    if #available(iOS 9.0, *) {
        UIBarButtonItem.appearanceWhenContainedInInstancesOfClasses([UINavigationBar.self]).tintColor = UIColor.whiteColor()
        UIBarButtonItem.appearanceWhenContainedInInstancesOfClasses([UINavigationBar.self]).setTitleTextAttributes([NSFontAttributeName : UIFont.systemFontOfSize(16.0, weight: UIFontWeightThin)], forState: UIControlState.Normal)
    } else {
        // Fallback on earlier versions

    }

имам няколко проблема по-долу: -

  1. Не мога да задам цвят на лентата за навигация за активност на споделяне - Skype, входяща кутия (приложение за поща на Gmail) на UIActivityViewController
  2. Не може да се зададе barButtonItem, напр. „Отказ“ на шрифт и размер с помощта на UIBarButtonItem.appearanceWhenContainedInInstancesOfClasses([UINavigationBar.self]).setTitleTextAttributes([NSFontAttributeName : UIFont.systemFontOfSize(16.0, weight: UIFontWeightThin)], forState: UIControlState.Normal)

Опитах се да напиша същия код в блока за завършване за UIActivityViewController, но нищо не работи.

  1. Когато избера чат от „Последни чатове“ при споделяне на whatsapp, цветът на барбутонита става син по подразбиране – Вижте Моментна снимка въведете описание на изображението тук

  2. Преди всичко решенията, които използвах, поддържат iOS версия 8.0, 8.2 или по-нова. Искам да постигна същото за версии, започващи от 7.0 или 7.1. Как мога да го направя ?




Отговори (1)


person    schedule
comment
Успях да постигна чрез кода, който споменах. Проблемът ми е - не мога да задам цвета на лентата за навигация и цвета на бутоните на лентата за модален изглед на приложението Skype и приложението Входящи за споделяне на активност в UIActivityViewController - person CuriousDev; 23.03.2016
comment
Също така, за цвета на бутона на лентата за активност на Whatsapp, след като потребителят избере скорошен чат. Вижте моментната снимка - person CuriousDev; 23.03.2016