gpt4 book ai didi

iphone - 导航栏背景隐藏了右键,无法在下次查看时将其删除

转载 作者:行者123 更新时间:2023-11-29 04:57:44 24 4
gpt4 key购买 nike

我正在使用下面的类别以编程方式将导航栏背景更改为我的应用程序。它工作正常,但我看不到我在导航栏中添加的右侧按钮。该按钮似乎隐藏,因为点击右侧导航栏仍然会触发连接到导航栏右侧按钮的操作。另外,如何删除使用给定类别方法添加的导航背景?

UINavigationBar+CustomImage.h

#import <Foundation/Foundation.h>

@interface UINavigationBar (CustomImage)
- (void)setBackgroundImage:(UIImage *)image;
- (void)clearBackgroundImage;

UINavigationBar+CustomImage.m

#import "UINavigationBar+CustomImage.h"

@implementation UINavigationBar (CustomImage)
{
if(image==nil) return;

UIImageView *image_view = [[UIImageView alloc] initWithImage:image];
image_view.frame = CGRectMake(0,0,320,44);
[self addSubview:image_view];
}

- (void)clearBackgroundImage
{
NSSArray *subviews = [self subviews];
for(int i=0;i<[subviews count];i++)
{
if([[subviews objectAtIndex:i] isMemberOfClass:[UIImageView class]])
{
[[subviews objectAtIndex:i] removeFromSuperview];
}
}

}

在我的 View Controller 中它的调用方式如下:

[[self.navigationController navigationBar] performSelectorInBackground:@selector(setBackgroundImage:) withObject:[UIImage imageNamed:@"header-background.png"]];

感谢您的帮助,

史蒂芬

最佳答案

尝试将您的 View 发送到后面:

[self sendSubviewToBack:image_view];

将其放置在特定的 z 索引处:

[self insertSubview:image_view atIndex:0];

或在另一个 View 下:

[self insertSubview:image_view belowSubview:anotherSubview];

或在另一个 View 之上:

[self insertSubview:image_view aboveSubview:anotherSubview];

关于iphone - 导航栏背景隐藏了右键,无法在下次查看时将其删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7611815/

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