Как изменить цвет и шрифт панели навигации и элемента панели в модальном представлении активности в 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 и модального представления приложения Inbox для общего доступа к UIActivityViewController - person CuriousDev; 23.03.2016
comment
Кроме того, для кнопки «Поделиться активностью WhatsApp» цвет элемента кнопки панели действий появляется после того, как пользователь выбирает недавний чат. Обратитесь к снимку - person CuriousDev; 23.03.2016