UITabBarController 背景图片设置不正确
UITabBarController background image is not set correctly
我正在尝试以编程方式添加 UITabBarController
。一切正常,但我有两个问题。
- 我正在设置标签栏背景图片,但它显示的是我什至在资源中都没有的不同图片。
我将这张图片用作标签栏背景图片,上面有一条绿线:
但它在底部显示了另一条绿线,如下所示:
这是我为此使用的代码:
[self.myTabBarController.tabBar setBackgroundImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"tabbar.png" ofType:nil]]];
另一个问题是,我正在使用以下代码设置标签栏项目图像:
MyViewController *myController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
UINavigationController *myNavController = [[UINavigationController alloc] initWithRootViewController: myController];
[myNavController.tabBarItem initWithTitle:@"" image:[UIImage imageNamed:@"ads_inactive.png"] selectedImage:[UIImage imageNamed:@"ads_active.png"]];
图像已设置,但是当我尝试使用以下方法在 MyViewController
的 viewDidLoad
中添加标题时:
self.title = @"My Ads";
它也在标签栏项目上显示相同的标题,但我不想要任何标题。
我该如何解决这个问题?
谢谢
示例:
UITabBar *tabBar = self.tabBarController.tabBar;
iterm0.imageInsets = UIEdgeInsetsMake(6, 0, -6, 0);
UITabBarItem *iterm0 = [tabBar.items objectAtIndex:0];
[iterm0 setImage:[[UIImage imageNamed:@"tab1_normal"]
imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[iterm0 setSelectedImage:[[UIImage imageNamed:@"tab1_selected"]
[(UITabBarItem *)[self.tabBarController.tabBar.items objectAtIndex:0] setTitle:@""];
图片尺寸小于tab bar的frame size,所以要覆盖frame area background image显示两次。
您可以通过两种方式更改它
1.)更改不是最佳选择的图像大小
2.) 将 tabBar 的内容设置为 (0,0,0,0)
我正在尝试以编程方式添加 UITabBarController
。一切正常,但我有两个问题。
- 我正在设置标签栏背景图片,但它显示的是我什至在资源中都没有的不同图片。
我将这张图片用作标签栏背景图片,上面有一条绿线:
但它在底部显示了另一条绿线,如下所示:
这是我为此使用的代码:
[self.myTabBarController.tabBar setBackgroundImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"tabbar.png" ofType:nil]]];
另一个问题是,我正在使用以下代码设置标签栏项目图像:
MyViewController *myController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil]; UINavigationController *myNavController = [[UINavigationController alloc] initWithRootViewController: myController]; [myNavController.tabBarItem initWithTitle:@"" image:[UIImage imageNamed:@"ads_inactive.png"] selectedImage:[UIImage imageNamed:@"ads_active.png"]];
图像已设置,但是当我尝试使用以下方法在 MyViewController
的 viewDidLoad
中添加标题时:
self.title = @"My Ads";
它也在标签栏项目上显示相同的标题,但我不想要任何标题。
我该如何解决这个问题? 谢谢
示例:
UITabBar *tabBar = self.tabBarController.tabBar;
iterm0.imageInsets = UIEdgeInsetsMake(6, 0, -6, 0);
UITabBarItem *iterm0 = [tabBar.items objectAtIndex:0];
[iterm0 setImage:[[UIImage imageNamed:@"tab1_normal"]
imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[iterm0 setSelectedImage:[[UIImage imageNamed:@"tab1_selected"]
[(UITabBarItem *)[self.tabBarController.tabBar.items objectAtIndex:0] setTitle:@""];
图片尺寸小于tab bar的frame size,所以要覆盖frame area background image显示两次。 您可以通过两种方式更改它 1.)更改不是最佳选择的图像大小 2.) 将 tabBar 的内容设置为 (0,0,0,0)