Edw*_*ted 4 back-button uinavigationbar swift
我正在尝试使用Swift的内部后退按钮图像.我之前已经问过这个问题并得到了技术上正确的答案,它从前一个视图继承了它,但是如果我插入这个代码你可以控制当前视图上的后退按钮.
// Takeover Back Button
self.navigationItem.hidesBackButton = false
let newBackButton = UIBarButtonItem(title: "<", style: .Plain, target: self, action: "segueBack")
navigationItem.leftBarButtonItem = newBackButton
Run Code Online (Sandbox Code Playgroud)
这给了我一个<,"ABC"会给我ABC等但是如何触发Swift来提出它的内部后退按钮图像.下面的代码不起作用,但我认为是沿着正确的方向.
let backImg: UIImage = UIImage(named: "BACK_BUTTON_DEFAULT_ICON")!
navigationItem.leftBarButtonItem!.setBackgroundImage(backImg, forState: .Normal, barMetrics: .Default)
Run Code Online (Sandbox Code Playgroud)
有没有人知道如何做到这一点?
Ash*_*kad 10
尝试添加自定义视图作为后退按钮,如
var backButton = UIButton(frame: CGRectMake(0, 0, 70.0, 70.0))
var backImage = UIImage(named: "backBtn")
backButton.setImage(backImage, forState: UIControlState.Normal)
backButton.titleEdgeInsets = UIEdgeInsetsMake(10.0, 10.0, 10.0, 0.0)
backButton.setTitle("Back", forState: UIControlState.Normal)
backButton.addTarget(self, action: "buttonPressed", forControlEvents: UIControlEvents.TouchUpInside)
var backBarButton = UIBarButtonItem(customView: backButton)
var spacer = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.FixedSpace, target: nil, action: nil)
spacer.width = -15
self.navigationItem.leftBarButtonItems = [spacer,backBarButton]
Run Code Online (Sandbox Code Playgroud)
它看起来与iOS后退按钮相同
我为这个问题苦苦挣扎了一段时间。最后我用以下代码得到了背面图像:
let backImage = navigationController?.navigationBar.subviews[2].subviews[0].subviews[0].subviews[0] as! UIImageView).image
Run Code Online (Sandbox Code Playgroud)
在运行上面的代码之前,请确保显示后退按钮。然后您可以保存backImage到任何您想要的地方。
这是我得到的背面图像。
| 归档时间: |
|
| 查看次数: |
6902 次 |
| 最近记录: |