gpt4 book ai didi

iOS 11 navigationItem.titleView 宽度未设置

转载 作者:IT王子 更新时间:2023-10-29 07:34:08 28 4
gpt4 key购买 nike

在带有 navigationItem.titleView 的 iOS11 上看到一个行为,其中 titleView 的宽度不是屏幕的整个宽度。

我有一个自定义 View ,我将其设置为 titleView。在 iOS11 之前, View 将填充导航栏区域。但是 iOS 11 它没有调整大小来填充屏幕的宽度。

我试过在设置 titleView 之前设置 View 的框架,但没有成功。我也试图强制 titleViews super View 布局约束,但没有成功。

附上截图:

iOS10:

enter image description here

iOS11:

enter image description here

还有其他人遇到过这种情况吗?

最佳答案

我想通了。我必须重写 View 和文本字段的 intrinsicContentSize getter。

我将宽度设置为 CGFloat.greatestFiniteMagnitude,因此它始终与屏幕一样宽。

更新:

由于我已经在这个问题上花了几个小时,希望其他人能够通过将所有事情紧密结合在一起来更快地跟上

我创建了一个 TitleView 的自定义子类,名为 CustomTitleView,代码如下:

import UIKit

class CustomTitleView: UIView {

override var intrinsicContentSize: CGSize {
return UIView.layoutFittingExpandedSize
}
}

我从一开始就错过的最重要的部分是:

enter image description here

关于iOS 11 navigationItem.titleView 宽度未设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44932084/

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