【问题标题】:Use a people picker inside a tab bar在标签栏中使用人员选择器
【发布时间】:2011-04-14 11:41:17
【问题描述】:

我目前正在使用 IOS 中的人员选择器来显示联系人列表,并让用户选择他们想要在我的应用中使用的联系人。

目前它以模态方式呈现,因为它会弹出并覆盖我的整个应用程序。

我的应用底部有一个标签栏,顶部有一个导航栏,我想知道是否可以在标签栏和导航栏之间的视图中显示人员选择器?

或者人员选择器是否会始终覆盖整个应用程序?

编辑:

当我尝试使用这样的导航控制器推送它时:

[self.navigationController pushViewController:picker animated:NO];

我收到以下错误:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Pushing a navigation controller is not supported'

【问题讨论】:

  • 我查看了编程指南,但它总是将视图控制器显示为模态。您是否尝试过以不同的方式展示它?
  • 是的,我已经编辑了我的答案,以显示我尝试过的更多细节

标签: iphone peoplepicker modal-view


【解决方案1】:

如果您不将其显示为模态,而是将其推送到导航控制器中,那么它不应隐藏您的标签栏。

我假设您在要在其中显示联系人视图的选项卡中设置了导航控制器。

【讨论】:

  • 好吧,所以 ABPeoplePickerNavigationController 已经是一个导航控制器,您可以设置 tabbarcontroller 以使用 ABPeoplePickerNavigationController 作为您的选项卡选项之一。然后将 ABPeoplePickerNavigationController 上的委托设置为另一个对象来处理选择。
  • 我只在 Objective-c 和 IOS 上编程了 4 天,所以没有完全理解,目前我的 TabBarController 没有自定义类,我将 TabBarController 设置为 rootController并将其与 NavigationBarController 一起添加到窗口中。所以我不确定如何将人员选择器设置为我的选项卡选项之一?并且因此不确定如何为 ABPeoplePickerNavigationController 设置委托?
  • 那我建议你再做一些教程,特别是那些关于通过代码创建tabbarcontroller的教程。
猜你喜欢
  • 1970-01-01
  • 2012-10-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-06
相关资源
最近更新 更多