【问题标题】:UINavigationItem: Create a "nextBarButtonItem" (= rightBarButtonItem with arrow)UINavigationItem:创建一个“nextBarButtonItem”(= 带有箭头的 rightBarButtonItem)
【发布时间】:2011-01-06 11:01:21
【问题描述】:

UINavigationItem 中有 3 个条形按钮:

  • backBarButtonItem
  • leftBarButtonItem
  • rightBarButtonItem

但是没有“nextBarButtonItem”(= 带有箭头的 rightBarButtonItem)。我怎样才能创建它?我需要带有箭头的自己的图像吗?如何将图像放在 rightBarButtonItem 中?或者有没有更好的方法没有图像?

【问题讨论】:

    标签: iphone objective-c uinavigationbar uibarbuttonitem


    【解决方案1】:

    唯一的方法是使用带有下一个按钮外观的自定义图像的条形按钮项,并将其设置为rightBarButtonItem。由于导航控制器的工作方式,Apple 不提供任何 nextBarButtonItem 功能。

    如果您仔细查看 iPod 应用程序中的“正在播放”按钮,它也是定制设计的。

    【讨论】:

    • 谢谢!如何构建自己的 UIBarButtonItem?我也需要第二张图片来实现点击效果。 “UIBarButtonItem initwithImage”不正确,我想我需要“UIBarButtonItem initWithCustomView”,但是我必须如何构造UIView?
    • @Manni:您可以使用UIButton 并将这些图像设置为正常和高亮状态。
    【解决方案2】:

    检查用于为 iPhone 创建 Facebook 应用程序的 three20 库。

    https://github.com/facebook/three20

    【讨论】:

    • 谢谢!我已经在我的项目中使用了这个库 :-) 在示例中,TTCatalog 是一个很棒的前进按钮。但是一个 TTButton 是一个 UIControl,我需要一个 UIBarButtonItem... 是否可以在 UINavigationBar 中添加一个 TTButton?
    • Bellow 是添加返回按钮的示例 TTButton* button = [TTButton buttonWithStyle:@"toolbarBackButton:" title:@"Back"]; [按钮 setFrame:CGRectMake(9, 7, 65, 33)]; [按钮 addTarget:target action:action forControlEvents:UIControlEventTouchUpInside]; [self.navigationController.navigationBar addSubview:button];
    • 是的,我是这样理解的:TTButton *forwardButtonView = [TTButton buttonWithStyle:@"toolbarForwardButton:" title:@"Next"]; [forwardButtonView addTarget:self action:@selector(btnNextPressed) forControlEvents:UIControlEventTouchUpInside]; [forwardButtonView sizeToFit]; UIBarButtonItem *forwardButton = [[UIBarButtonItem alloc] initWithCustomView:forwardButtonView]; self.navigationItem.rightBarButtonItem = forwardButton; [前进按钮释放];
    猜你喜欢
    • 1970-01-01
    • 2016-06-28
    • 2016-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-05
    • 2016-02-21
    • 1970-01-01
    相关资源
    最近更新 更多