如何在iPhone导航栏上放置“信息”按钮?

时间:2009-08-20 18:51:24

标签: iphone

我想在导航栏上放置一个“i”按钮(在导航栏出现的所有屏幕上)。触摸该按钮应该会显示一个视图(可能是模态),我可以在其中进行控制。如何将按钮放在导航栏上,以及如何执行回叫?

2 个答案:

答案 0 :(得分:65)

信息按钮代码:

UIButton* infoButton = [UIButton buttonWithType:UIButtonTypeInfoLight];
    [infoButton addTarget:self action:@selector(infoButtonAction) forControlEvents:UIControlEventTouchUpInside];
    UIBarButtonItem *modalButton = [[UIBarButtonItem alloc] initWithCustomView:infoButton];
    [self.navigationItem setLeftBarButtonItem:modalButton animated:YES];
    [modalButton release];

上面的代码调用方法 - (void)infoButtonAction。将其添加到所有ViewControllers或只创建一个.nib并将其用于所有视图。

答案 1 :(得分:10)

您也可以在storyboard上实现它。将UIButton拖到导航栏而不是通常的UIBarButtonItem。您将看到您的解开按钮将被嵌套"栏内按钮项目内可以展开。

enter image description here

然后您可以将按钮的类型属性更改为info light |属性检查器中的黑暗。

enter image description here