2015-12-06 116 views
2

在我的應用程序中,我使用SWRevealViewController。目前一切工作正常,除了菜單圖像position.I設置菜單按鈕編程。現在我需要把它放到正確的位置。它還需要在所有屏幕尺寸下工作,並且需要在同一個地方。 我設置了這樣的如何在Swift中正確設置圖像位置?

override func viewDidAppear(animated: Bool) { 


    let image = UIImage(named: "[email protected]") 

    tabBarController?.navigationItem.leftBarButtonItem = UIBarButtonItem(title: "", style: 
     UIBarButtonItemStyle.Plain, target: self.revealViewController(), action: Selector("revealToggle:")) 
    tabBarController?.navigationItem.leftBarButtonItem?.image = image 


} 

菜單按鈕,下面是結果

ScreenShot


如何解決呢?我想我需要以編程方式來做... 這裏是我的故事板文件的總體佈局。

ScreenShot2

謝謝您的回答。

+0

當使用'UITabBarController's和'UINavigationController's在一起時,'UITabBarController'應該先,並在'UITabBarController'每個項目都應該有自己'UINavigationController'堆棧。 – vacawama

回答

0

這可能是因爲您正在使用標題初始化UIBarButtonItem而發生的。像這樣的東西初始化:

let img = UIImage(named: "[email protected]")!.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal) 
let leftBarButtonItem = UIBarButtonItem(image: img, style: UIBarButtonItemStyle.Plain, target: self.revealViewController(), action: Selector("revealToggle:")) 
tabBarController?.navigationItem.leftBarButtonItem = leftBarButtonItem 
+0

謝謝你的回答。除了一個缺點,它的工作原理是完美的,那就是,現在菜單圖像是灰色的,而不是藍色的。我不知道是什麼原因造成的......如果你能告訴我,我會很高興。再次感謝 – TheTeacher33

+0

嘗試在沒有RenderingMode的情況下初始化UIImage'let img = UIImage(named:「[email protected]」)' – adolfosrs

+0

工作很好,再次感謝你 – TheTeacher33

相關問題