如何在Swift中正确设置图像位置?

时间:2015-12-06 14:36:36

标签: swift autolayout swrevealviewcontroller

在我的应用中,我使用的是SWRevealViewController。目前一切正常,除了菜单图像位置。我以编程方式设置菜单按钮。现在我需要将它放到正确的位置。它还需要在所有屏幕尺寸下工作,并且需要在同一个地方。 我设置了这样的菜单按钮

    override func viewDidAppear(animated: Bool) {


    let image = UIImage(named: "reveal-icon@2x.png")

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


}

这是结果

ScreenShot

我该如何解决?我想我需要以编程方式进行... 这是我的故事板文件的整体布局。

ScreenShot2

感谢您的回答。

1 个答案:

答案 0 :(得分:0)

这可能会发生,因为您正在使用标题初始化UIBarButtonItem。用这样的东西初始化它:

let img = UIImage(named: "reveal-icon@2x.png")!.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal)
let leftBarButtonItem = UIBarButtonItem(image: img, style: UIBarButtonItemStyle.Plain, target: self.revealViewController(), action: Selector("revealToggle:"))
tabBarController?.navigationItem.leftBarButtonItem = leftBarButtonItem