iOS的UINavigationBar与UIToolbar与UITabBar

让我知道在哪种情况下应该使用哪一个。

他们之间有什么不同?

每个组件的优点和缺点是什么?

UINavigationBar类实现了导航分层内容的控件。 这是一个酒吧,通常显示在屏幕的顶部,包含用于上下导航的button。 主要属性是一个左(后退)button,一个中心标题和一个可选的右键。

UIToolbar类的一个实例是一个用于select许多button之一的控件,称为工具栏项目。 点击时,工具栏会暂时突出显示或不会更改项目的外观。 如果您需要单选button样式控件,请使用UITabBar类。

UITabBar类实现了一个控件,用于select两个或多个button中的一个,称为项目。 标签栏最常见的用途是实现一个模式界面,在该模式界面中点击一个项目会改变select。

引用大哥:

的TabBar

如果您的应用程序对同一组数据或与应用程序的整体function相关的不同子任务提供不同的观点,则可能需要使用选项卡栏。 屏幕底部出现一个标签栏。

标签栏使用户能够在应用程序中的不同模式或视图之间进行切换,用户应该能够从应用程序的任何地方访问这些模式

工具栏

如果您的应用程序提供了许多用户可以在当前上下文中执行的操作,则可能需要提供一个工具栏

但是,这并不能给你一个完全清晰的基于应用程序的决定。 最好的解决scheme是查看iPhone内置的应用程序(Clock和iPod)以及Appstore批准的应用程序,并坚持一致,因为这正是Apple HIG指导和AppStore批准过程所要解决的问题。

你应该看看这些问题的移动HIG (人机接口指南)。