将自定义按钮添加到导航控制器
Add custom button to navigation controller
所以我想在我的导航控制器中添加一个带有自定义背景图像的自定义设置按钮。目前我尝试这样做:
func viewDidLoad() {
super.viewDidLoad()
/// Settings button:
let settingsButton = UIButton(frame: CGRect(x: 0, y: 0, width: 30, height: 30))
settingsButton.setImage(UIImage(named: "Configuration Icon"), for: .normal)
settingsButton.addTarget(self, action: #selector(configurationTapped), for: .touchUpInside)
self.navigationItem.rightBarButtonItem = UIBarButtonItem(customView: settingsButton)
}
当我点击这个按钮时,configurationTapped
被触发,但问题是当我把它放在导航控制器外面时,按钮不会像往常一样闪烁。
我该如何解决这个问题??
我应该在每次调用操作时创建自定义动画,还是我在这里遗漏了什么?
let yourButton = UIBarButtonItem(image: yourImage, style: .done, target: self, action: #selector(yourSelector))
self.navigationItem.rightBarButtonItem = yourButton
您可以对一个按钮使用属性:
settingsButton.showsTouchWhenHighlighted = true
Apple Doc 说,“一个布尔值,用于确定点击按钮是否会使其发光。”
所以我想在我的导航控制器中添加一个带有自定义背景图像的自定义设置按钮。目前我尝试这样做:
func viewDidLoad() {
super.viewDidLoad()
/// Settings button:
let settingsButton = UIButton(frame: CGRect(x: 0, y: 0, width: 30, height: 30))
settingsButton.setImage(UIImage(named: "Configuration Icon"), for: .normal)
settingsButton.addTarget(self, action: #selector(configurationTapped), for: .touchUpInside)
self.navigationItem.rightBarButtonItem = UIBarButtonItem(customView: settingsButton)
}
当我点击这个按钮时,configurationTapped
被触发,但问题是当我把它放在导航控制器外面时,按钮不会像往常一样闪烁。
我该如何解决这个问题??
我应该在每次调用操作时创建自定义动画,还是我在这里遗漏了什么?
let yourButton = UIBarButtonItem(image: yourImage, style: .done, target: self, action: #selector(yourSelector))
self.navigationItem.rightBarButtonItem = yourButton
您可以对一个按钮使用属性:
settingsButton.showsTouchWhenHighlighted = true
Apple Doc 说,“一个布尔值,用于确定点击按钮是否会使其发光。”