swift - 如何让导航栏在转回时显示大标题?
问题描述
我有一个选项卡栏应用程序,其中一个视图是 UITableViewController,其中包含静态单元格作为 1 节和 1 行的内容。
我希望将大标题设置为“始终”,因此我在情节提要上进行了选择,并且在模拟器上标题很大。现在,当用户点击“开始聊天”时,应用程序将转到虚拟助手视图控制器,其中大标题在情节提要上设置为“从不”。现在的问题是,当用户使用“开始聊天”表格视图单元格回到前一个视图控制器时,标题不再大了。
有趣的是,当我将表格视图设置为可滚动时,在向下拖动表格视图时标题再次变大。我确保使用“首选大标题”检查了导航控制器故事板上的导航栏。我正在使用 Xcode 11,使用 Xcode 10 时这不是问题。
我尝试使用开始聊天按钮为视图创建一个自定义类,但此代码无法使标题从 segue 变大:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
navigationController?.navigationItem.largeTitleDisplayMode = .always
navigationController?.navigationBar.prefersLargeTitles = true
我还能做什么?任何帮助将不胜感激!
解决方案
我会willMove(toParent:)
在执行 segue 之前将标题改回。
override func willMove(toParent parent: UIViewController?) {
navigationController?.navigationItem.largeTitleDisplayMode = .always
navigationController?.navigationBar.prefersLargeTitles = true
}
推荐阅读
- r - 如何修复 .xts 下标中的错误超出范围
- javascript - 导出过滤的 HTML 表并绕过格式错误的最佳方法?
- python - 从原点(0,0)到(n,n)的nxn矩阵中的最高和路径
- rust - 在块构建器中访问 Substrate 外部数据
- c# - 使用 PDFSharp 和 MigraDoc 将文本转换为 PDF 时,我的 windows 窗体缩小了
- javascript - TypeError:无法读取 null React.js 的属性“地图”
- java - 检查是否有一个数组,如果没有创建/添加一个,同时增加数组的大小
- c++ - 变量定义是否超出范围优化?
- dpdk - 构建 DPDK PktGen 的问题
- kubernetes - 如何在没有 docker config 的情况下清除 kubernetes 中的日志