gpt4 book ai didi

ios - 将目标添加到导航栏中的库存后退按钮

转载 作者:可可西里 更新时间:2023-11-01 06:23:18 24 4
gpt4 key购买 nike

我在 UINavigationBar 中设置标题和后退按钮的值如下:

self.navigationItem.title = @"Post";
[self.navigationController.navigationBar setTitleTextAttributes:@{NSForegroundColorAttributeName : [[UIColor blueColor] colorWithAlphaComponent:0.75f],
NSFontAttributeName : [UIFont fontWithName:@"HelveticaNeue" size:20]}];
[self.navigationController.navigationBar.backItem setTitle:@"Pop Pop !"];

但我无法将目标添加到后退按钮。我尝试了以下方法:

[self.navigationItem.backBarButtonItem setTarget:self];
[self.navigationItem.backBarButtonItem setAction:@selector(goBack:)];

self.navigationItem.backBarButtonItem.target = self;
self.navigationItem.backBarButtonItem.action = @selector(goBack:);

但是我的选择器在弹出 viewController 时没有被调用。

enter image description here

如何将目标添加到 backButton,或在弹出 viewController 时调用选择器?(我已经尝试了SO中提到的所有可能的解决方案,但都是徒劳)

编辑:我更愿意编辑常用后退按钮的行为,而不是将自定义按钮设置为后退按钮。

最佳答案

您不能将目标添加到常用的 BackButton,但您可以覆盖 CustomNavigationController 中的 UINavigationBarDelegate 方法,如下所示:

class CustomNavigationController: UINavigationController {

@IBOutlet weak var ibNavigationBar: UINavigationBar!

override func viewDidLoad() {
super.viewDidLoad()

ibNavigationBar.delegate = self
}

}

extension CustomNavigationController: UINavigationBarDelegate {
func navigationBar(navigationBar: UINavigationBar, shouldPopItem item: UINavigationItem) -> Bool {
for viewController in viewControllers {
if viewController.title == "YourTitledViewController" {
popToViewController(viewController, animated: true)
}
}
return false
}
}

关于ios - 将目标添加到导航栏中的库存后退按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20065235/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com