[英]Custom Tab Bar iOS - 3 Buttons
我想创建一个只有3个按钮的自定义标签栏设计。 尝试将图像拆分为适合iPhone屏幕时出现问题。 宽度为320时,您需要将2个标签页的宽度设为106,将第三个标签页的宽度设为108。当我以正确的尺寸创建图像时,它们不适合显示,最后我在右侧向下画了1px的线这个:
这是我正在使用的代码:
UIImage *selectedImage0 = [UIImage imageNamed:@"tb_1_down.png"];
UIImage *unselectedImage0 = [UIImage imageNamed:@"tb_1_up.png"];
UIImage *selectedImage1 = [UIImage imageNamed:@"tb_2_down.png"];
UIImage *unselectedImage1 = [UIImage imageNamed:@"tb_2_up.png"];
UIImage *selectedImage2 = [UIImage imageNamed:@"tb_3_down.png"];
UIImage *unselectedImage2 = [UIImage imageNamed:@"tb_3_up.png"];
UITabBar *tabBar = self.tabBarController.tabBar;
UITabBarItem *item0 = [tabBar.items objectAtIndex:0];
UITabBarItem *item1 = [tabBar.items objectAtIndex:1];
UITabBarItem *item2 = [tabBar.items objectAtIndex:2];
self.tabBarController.tabBar.frame = CGRectMake(0, 430, 320, 50);
[self.tabBarController.tabBar setBackgroundImage:[UIImage imageNamed:@"tb_tabBar_BG.png"]];
[item0 setFinishedSelectedImage:selectedImage0 withFinishedUnselectedImage:unselectedImage0];
[item1 setFinishedSelectedImage:selectedImage1 withFinishedUnselectedImage:unselectedImage1];
[item2 setFinishedSelectedImage:selectedImage2 withFinishedUnselectedImage:unselectedImage2];
有什么方法可以使'item1'的宽度变为108而不是106?
这可能会给您您想要的东西: 设置选项卡的背景图像
这具有制作完全自定义标签栏按钮的过程。
我担心您可能正在研究UITabBar / UITabBarController的100%自定义实现-我不知道有什么方法可以在这种程度上自定义股票。
我设法通过子类化UITabBarController并使用UIImageViews而不是@human建议的UIButtons来解决此问题,因为我无法摆脱更改按钮图像的不合理方法,无论您是否设置图像,该方法都会闪烁并突出显示或不。
我的代码可以在这里的答案中找到: UITabBar定制未按预期工作
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.