我想创建一个如下所示的UITabbar,但我不知道这样做的逻辑是什么。
答案 0 :(得分:0)
这是一个很大的答案:
首先,您需要创建一个UIView子类,以获得看起来像您想要的栏的视图。它可以由后台UIImageView和三个按钮组成。
然后,最好的方法是创建UITabBarController的子类,并在其viewDidLoad中,或者在流经过一次的任何点,您实例化一个在第一点指定的类型的视图。您应该放置此视图的框架以隐藏控制器的原始标签栏。
这将是自定义栏标题文件:
@interface CustomBar : UIView
{
}
@property (nonatomic, retain) UIImageView *backgroundView;
@property (nonatomic, retain) NSArray *buttons;
@end
您可以轻松完成实施。您可以尝试查找如何使用nib文件对其进行实例化,以便更容易地进行设计。为了测试,您可以先将背景颜色设置为绿色或可见的颜色。
然后,这将是UITabBarController类的子类:
@interface CustomTabBarController : UITabBarController
@property (nonatomic, retain) CustomBar *customBar;
@end
@implementation CustomTabBarController
- (void)viewDidLoad
{
[super viewDidLoad];
self.customBar = [[[CustomBar alloc] initWithFrame:[self.tabBar frame]] autorelease];
[self.view addSubview:self.customBar];
}
@end
如果您不使用ARC,请记住实施dealloc。 我在这里没有解决的问题是如何在自定义栏和tabbarcontroller之间创建按钮之间的通信。这应该由代表们解决。如果您需要帮助,我也会完成。
祝你好运!