Как скрыть Значок панелей

Трудно ответить, не увидев больше кода, однако я считаю, что в MVP вы должны сконфигурировать свои контроллеры представления, используя Configurator.

class FavouritesConfigurator {

    func configureViewController(delegate: FavouritesSceneDelegate?) -> FavouritesViewController {
        let viewController = FavouritesViewController()
        let presenter = FavouritesPresenter(view: viewController)
        presenter.delegate = delegate
        viewController.setPresenter(presenter)
        return viewController
    }
}

Ваш метод запуска координатора должен просто вызвать FavouritesConfigurator и вернуть ViewController, настроенный вашим докладчиком и т. Д.

Вы можете использовать возвращаемое значение этого FavouritesConfigurator для настройки ваших просмотров.

Это просто случай удаления каждой конфигурации представлений от метода запуска и непосредственного вызова этого конфигуратора. Это не нарушает никаких принципов, поскольку ваши компоненты по-прежнему изолированы, проверяемы и вызываются правильно.

Опять же, не видя ваш код, трудно быть точным, но попробуйте это:

let controllers = [FavouritesConfigurator().configureViewController(delegate: self),...,...]
tabBarController.viewControllers = controllers
61
задан Thomas Tempelmann 17 October 2015 в 08:10
поделиться

2 ответа

Я думаю, что Вы ищете LSUIElement в Info.plist

LSUIElement (Строка). Если этот ключ устанавливается к “1”, Launch Services запускает приложение как приложение агента. Приложения агента не появляются в Прикреплении или в окне Force Quit. Хотя они обычно работают как фоновые приложения, они могут прибыть в передний план для представления пользовательского интерфейса при желании.

Посмотрите краткое обсуждение здесь о превращении его вкл\выкл

75
ответ дан epatel 24 November 2019 в 16:58
поделиться

Если Вы хотите сделать это пользовательской настройкой тогда, Вы не можете использовать UIElement. UIElement находится в комплекте приложений, Вы не должны редактировать ни один из файлов в комплекте приложений, поскольку это будет делать недействительным подпись пакетов.

лучшее решение, которое я нашел, основано эта превосходная статья . Мое решение основано на комментарии Dan. Короче говоря, нет никакого способа сделать это с Какао, но это возможно с крошечным битом Углеродного кода.

статья также предлагает делать вспомогательное приложение, которое обрабатывает значок панелей исключительно. Главное приложение тогда запускает и уничтожает это приложение в зависимости от пользовательских предпочтений. Этот подход, кажется мне, более устойчив, чем использование Углеродного кода, но я еще не попробовал его.

3
ответ дан Benedict Cohen 24 November 2019 в 16:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: