gpt4 book ai didi

ios - 我可以重写 prepare for segue 方法以便使用 UIViewController 扩展添加一些代码吗?

转载 作者:行者123 更新时间:2023-11-28 14:10:11 24 4
gpt4 key购买 nike

enter image description here

我需要像上图一样制作一个没有标题的后退按钮,所以我只想要“<”栏按钮而不是“<主页”栏按钮

为了实现它,我在 prepare for segue 方法中使用如下代码

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {

// to remove title in back button in the segue destionation view controller
navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: .plain, target: nil, action: nil)

}

但我必须将代码放在这么多 View Controller 中。所以我认为我可以使用如下所示的 UIViewController 扩展使其更简单

extension UIViewController {

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {

super.prepare(for segue: UIStoryboardSegue, sender: Any?)

// to remove title in back button in the segue destionation view controller
navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: .plain, target: nil, action: nil)

}

}

所以当我再次调用 prepare for segue 时,它​​会自动执行下面的代码,而无需在每个 View Controller 中再次编写该代码

navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: .plain, target: nil, action: nil)

最佳答案

通过配置导航项,您可以在其他 View Controller 的标题和后退按钮上使用不同的文本。 enter image description here如果后退按钮文本为空,它会自动使用标题代替。可以在之前View Controller的Navigation Item上的Back Button字段中放一个空格。这样,后退按钮上显示的标题将变成一个空格,而它自己的标题仍然是您想要的。 enter image description here

关于ios - 我可以重写 prepare for segue 方法以便使用 UIViewController 扩展添加一些代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52638760/

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