Как скопировать фоновое изображение NavigationBar по умолчанию в iOS11? - PullRequest
0 голосов
/ 23 мая 2018

NavigationBar в iOS11 имеет хорошее размытие.Я пытаюсь скопировать это на другое изображение.

Следующее установит NavigationBar со значениями по умолчанию (включая размытие):

    self.navigationController?.navigationBar.barStyle = .default
    self.navigationController?.navigationBar.setBackgroundImage(nil, for: UIBarMetrics.default)
    self.navigationController?.navigationBar.shadowImage = nil

Я просто пытаюсь скопироватьфон для нового изображения соответствует внешнему виду, но следующее не работает:

let imageView = UIImageView()
imageView.image = self.navigationController.navigationBar.backgroundImage(for: UIBarMetrics.default)

Есть идеи?

1 Ответ

0 голосов
/ 30 мая 2018

Так что я никогда не мог понять это, но я смог решить это, используя пустой UIToolbar, где мне нужно было копировать фон navBar.

В моем случае я пытался установить statusBar, чтобы иметьтот же фон и панель навигации.

statusBarView = UIToolbar()

Чтобы установить его с фоном по умолчанию:

self.statusBarView.setBackgroundImage(nil, forToolbarPosition: .any, barMetrics: .default)

И сделать его прозрачным:

self.statusBarView.setBackgroundImage(UIImage(), forToolbarPosition: .any, barMetrics: .default)
...