【问题标题】:Can't add segmented control to toolbar via code using a UIBarButtonItem with a custom view无法使用带有自定义视图的 UIBarButtonItem 通过代码将分段控件添加到工具栏
【发布时间】:2012-12-15 13:21:54
【问题描述】:

在我的应用程序中,我曾经在顶部有一个导航栏,在底部有一个工具栏,总共有 4 个按钮。我还在工具栏中有一个分段控件,当切换其他按钮之一时会显示该控件。使用IBOutlets 等,这一切都可以正常工作。

其中一个按钮是粗略的用户跟踪按钮,我现在已将其替换为MKUserTrackingButton。为了让它工作,我必须通过代码添加它(bottomToolBarIBOutletUIToolBar):

[bottomToolBar setItems:[NSArray arrayWithObjects:trackButton, flexible, keysButton, nil] animated:YES];

这很好用,当然,segmentedcontrol(称为 mapTypeControl)现在显示时间更长了,所以我这样做了:

UIBarButtonItem *segmentControlButton = [[UIBarButtonItem alloc] initWithCustomView:mapTypeControl];
[bottomToolBar setItems:[NSArray arrayWithObjects:trackButton, flexible, segmentControlButton, flexible, keysButton, nil] animated:YES];

但是段控制没有显示。如果我将它添加到它显示的导航栏中,但我无法让它显示在工具栏中。

我在这里错过了什么?

【问题讨论】:

  • 其他按钮是否显示?

标签: ios uinavigationbar uibarbuttonitem uitoolbar uisegmentedcontrol


【解决方案1】:

我需要查看更多代码才能真正理解这里发生的事情,我不清楚你为什么要在代码中做一些按钮,而在 IB 中做一些按钮。但是,为什么不保留对包含 IB 中分段控件的 UIBarButtonItem 的引用?然后你不必销毁它并重新创建它,你可以将它插入到底部工具栏上设置的数组中。

【讨论】:

    猜你喜欢
    • 2011-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-02
    • 1970-01-01
    相关资源
    最近更新 更多