选择特定单元格时,如何更改导航栏右侧按钮中的图像?
一个很好的例子是图片rightBarButtonItem
根据所选单元格的不同而不同:
您可以使用 viewDidLoad 中的以下代码在导航栏中简单地添加一个右栏按钮项:
let navBarbutton = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.bookmarks, target: self, action: nil)
navItem.rightBarButtonItem = navBarbutton
(用您的图像更改 systemItem)
像这样添加一个 IBOutlet:
@IBOutlet weak var navItem: UINavigationItem!
并将其连接到情节提要中的导航项。
然后在您的 didSelectRowAtIndexPath 中,您可以使用以下示例代码处理它:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if (indexPath.row == 0)
{
navItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.add, target: self, action: nil)
}
else if (indexPath.row == 1)
{
navItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.camera, target: self, action: nil)
}
}
您可以尝试以下代码来创建并设置UIBarButtonItem
为navigationItem
.
let updateButton = UIBarButtonItem(image: YourImage, style: .plain, target: self, action: #selector(buttonAction))
navigationItem.rightBarButtonItem = updateButton
@objc func buttonAction() {
}
因此,在您的didSelectRowAt indexPath
委托方法中根据条件创建并UIBarButtonItem
根据需要进行设置。