gpt4 book ai didi

ios - 在自定义 UINavigationBar 中绘图,附加到顶部

转载 作者:行者123 更新时间:2023-12-03 17:22:24 26 4
gpt4 key购买 nike

我有一个 UINavigationBar 的子类。它的 barPositionUIBarPositionTopAttached。比我在子类中重写 -(void)drawRect:(CGRect)rect 。作为参数的 rect 始终具有 44 px 高度,并且我只能在该矩形内进行绘制。因此,我无法在状态栏上执行绘图,并且它具有默认外观。如果我将 -drawRect 注释掉,那么它看起来就像预期的那样,导航栏和状态栏看起来是一个整体,并且高度为 64 px。有没有办法通过在 UINavigationBar 的子类中重写 -drawRect: 来实现这种效果?

最佳答案

我遇到了一个带有背景图像的自定义 UINavigationBAr 的问题,当我在 drawRect 中添加图像时,该背景图像不会出现在 iOS 7 上的半透明状态栏下。

将背景图片移动到ViewControllers viewDidLoad方法后,背景图片出现在状态栏下方

-(void)viewDidLoad
{
if (UI_USER_INTERFACE_IDIOM() != UIUserInterfaceIdiomPad)
{
UIImage *image = [UIImage imageNamed:@"nav-bg-ipad.png"];
[self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
}else{
UIImage *image = [UIImage imageNamed:@"nav-bg-iphone.png"];
[self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
}
// do your other stuff now …

希望这有帮助

关于ios - 在自定义 UINavigationBar 中绘图,附加到顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19523432/

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