gpt4 book ai didi

ios - UISplitViewController:DetailViewController 中的 titleView 在横向方向上消失,预期行为?

转载 作者:行者123 更新时间:2023-12-02 04:38:52 25 4
gpt4 key购买 nike

我正在使用 Master/Detail VC 的 navigationItem.titleView 在导航栏中添加自定义 titleView。将设备方向更改为横向时,MasterViewController 下的 titleView 工作正常,但 DetailViewControllertitleView 消失。将方向更改回纵向时,titleView 会重新出现在 DetailViewController 中。我还附上了源代码和视频的链接。

这是有意为之的行为还是我自己犯了错误,或者是 Apple 方面的问题?

//Custom Title View:
class TitleView: UIView {
override func sizeThatFits(_ size: CGSize) -> CGSize {
return CGSize(width: 50, height: 20)
}
}

class DetailViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
//Adding titleView for Master/Detail VC:
navigationItem.titleView = {
//Setting frame size here, did not make any difference
let view = TitleView(frame: .zero)
view.backgroundColor = .red
return view
}()
}
}

完整源代码在这里:https://github.com/avitron01/SplitViewControllerIssue/tree/master/MathMonsters

强调该问题的视频: https://vimeo.com/336288580

最佳答案

我也遇到了同样的问题。这似乎是一个 iOS 错误。我的解决方法是在每个 View 布局上重新分配标题 View 。我在我的 DetailViewController 中使用了这段代码:

override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
if let v = navigationItem.titleView {
navigationItem.titleView = nil
navigationItem.titleView = v
}
}

关于ios - UISplitViewController:DetailViewController 中的 titleView 在横向方向上消失,预期行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56144325/

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