0

我正在开发一个 iPhone 应用程序,不使用 IB,并以编程方式在基于视图的应用程序的 UIViewController 中创建了一个包含三个项目的 UITabbar,我使用了一个委托方法,如果没有下面代码段中的最后一行(setDelegate 方法),它将无法工作。我没有 tabbarviewcontroller。

    UITabBar *tabbar = [[UITabBar alloc] initWithFrame:CGRectMake(0, YMAX-60, XMAX, 40)];

    NSMutableArray *items = [[NSMutableArray alloc] initWithCapacity:3];
    [items addObject:[[[UITabBarItem alloc] initWithTitle:@"One" image:[UIImage imageNamed:@"img04.png"] tag:0] autorelease]];
    [items addObject:[[[UITabBarItem alloc] initWithTitle:@"Two" image:[UIImage imageNamed:@"img.png"] tag:1] autorelease]];
    [items addObject:[[[UITabBarItem alloc] initWithTitle:@"Three" image:[UIImage imageNamed:@"img-01.png"] tag:2] autorelease]];

    tabbar.items = items;
    tabbar.alpha = 1.0;
    tabbar.userInteractionEnabled = YES;
    [tabbar setBackgroundColor:[UIColor blueColor]];
    [tabbar setDelegate:self];

是否有可能消除此警告?我不是 Cocoa 程序员,有时需要在 iphone 上工作。

4

1 回答 1

5

要消除此警告,您必须实现 UItabBarDelegate 协议的一个必需方法。

UITabBarDelegate_Protocol

可以看到需要的方法是:

– tabBar:didSelectItem:

实施它,你会没事的。

不要忘记在你的头文件中声明你实现了协议。

@interface MyDelegate <UITabBarDelegate>
于 2009-11-24T09:24:40.953 回答