2015-11-10 1 views
0

Я нашел кучу ссылок на SO, которые показывают, как настроить навигационную панель для изображения в Objective-C, но ни один из них не является быстрым. Один я нашел, не помогло: UINavigationBar setBackgroundImage in AppDelegate with SwiftКак установить изображение для панели навигации AppDelegate Swift

В didFinishLaunchingWithOptions в AppDelegate я пытаюсь сделать это с быстрым, не помогло:

let headerImage = UIImage(named: "header.png") 
    UINavigationBar.appearance().setBackgroundImage(headerImage, forBarMetrics:.Default) 
    UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.Default 

    var navigationVC:UINavigationController = UINavigationController(rootViewController: tableVC) 
    let frame = UIScreen.mainScreen().bounds 
    window = UIWindow(frame: frame) 

    window!.rootViewController = navigationVC 
    window!.makeKeyAndVisible() 

Как я могу установить панель навигации для образ в быстрой?

Заранее спасибо.

+0

Вы код в порядке. Проблема заключается в самом изображении. Вы уверены, что добавили его в свою цель? Debug 'headerImage' и убедитесь, что это не' nil' – joern

+0

Как я могу добавить его в свою цель? http://postimg.org/image/pw1x4olrj/ Предположительно по этому изображению 'header.png' находится в нужном месте ... При настройке точек останова на' headerImage' и в строке под приложением появляется сообщение об ошибке llDB. @joern – lukaivicev

+0

Выберите свое изображение и откройте представление «Утилиты». Убедитесь, что в целевом членстве есть галочка. Вот скриншот: http://postimg.org/image/x0027l3nh/ – joern

ответ

2

Вы используете изображение сетчатки, но Xcode этого не знает, потому что у него нет имени файла, содержащего @2x.

Так что, если вы переименуете свое изображение в [email protected], оно работает.

Возможно, вы захотите рассмотреть возможность использования Каталога активов для своих изображений, чтобы избежать подобных ситуаций.