使用UINavigationBar没有UINavigationController

我想在我的UIWebView的顶部有一个UINavigationBar,但是我想用手来控制标题,后退button,后退button的function等。换句话说,我从来不想推送或popup视图。 我只是想在用户点击Web视图时更改UINavigationBar的内容。

我在哪里是我UINavigationBar添加到我的超级视图,并使其44个像素高。 如何设置标题,因为我没有navigationItem? 我将如何设置一个假背button?

我将不胜感激任何指针。 我意识到这很奇怪我在做什么。

谢谢 :)

如果有人感兴趣,答案是在UINavigationBar的类引用中。

当您使用导航栏作为独立对象时,您负责提供其内容。 与其他types的视图不同 ,您不要直接向导航栏添加子视图。 而是使用导航项 (UINavigationItem类的一个实例)来指定要显示的button或自定义视图。 导航项目具有用于在导航栏的左侧,右侧和中心指定视图以及用于指定自定义提示string的属性。

简而言之,使用UINavigationItem并通过UINavigationBar上的“pushNavigationItem”应用它。

我创build了一个名为StaticNavigationBar的UINavigationBar的子类,然后可以通过在其上放置适当的UINavigationItem来加载任何状态。 感谢所有你的答案的人。

您可以将该UINavigationBar作为一个出口,然后您可以根据需要进行处理。 所以你不必提及某人的导航项目。 这将是一个独立的(sorting)对象在你的看法。

如果你不想要导航栏,你将不得不推出自己的。 如果您可以使用内build的推动和popup项目的animation(不要将视图控制器的push / pop混淆),那么您将设置UINavigationBarDelegate并使用其方法来控制事件的推送/popup等。