gpt4 book ai didi

iphone - 获取 navigationItem.titleView layoutSubviews 的正确边界

转载 作者:太空狗 更新时间:2023-10-30 04:02:57 25 4
gpt4 key购买 nike

我有一个 UIView 的子类,我使用以下代码行将其添加为 navigationItemtitleView:

self.navigationItem.titleView = tempview;

很简单。那很好用。我的问题是这个 navigationItem 有时会更新 rightBarButton(有时没有按钮,有时有一个标准尺寸的按钮,有时有一个更大的按钮)。

我想我可以简单地使用我添加为 titleViewtempview 类的 layoutSubviews 方法,所以我把这个在:

-(void)layoutSubviews {
[super layoutSubviews];
self.mylabel.frame = self.bounds;
}

这似乎不起作用,因为当 rightBarButton 项目更新时,它没有正确地调整 titleview 的大小。

我还注意到边界一旦变小就不会变大,它们只是改变位置。

我试过使用 setNeedsLayoutlayoutIfNeeded 但它们只是使用不正确的边界“调整” View 。

我还确保 rightBarButton 项设置为 nil,但 View 在缩小后仍然无法正确展开。

感谢您的帮助!

最佳答案

配置你的 View

[self setAutoresizingMask:UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth];

(可能在 initWithFrame 中)

然后实现

- (void)willMoveToSuperview:(UIView *)newSuperview
{
[self setFrame:[newSuperview bounds]];
}

现在您的 View 与容器的大小相匹配,并自动调整大小。

关于iphone - 获取 navigationItem.titleView layoutSubviews 的正确边界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2195208/

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