objective-c - 在 iOS 中使用自定义导航栏

标签 objective-c ios ios5

我向 .xib 添加了一个导航栏。 我这样做是因为我想自定义其中的很多东西。我希望我的导航 Controller 在该屏幕中使用该导航栏。

我创建了名为 navBar 的 socket 并做了:

[self.navigationController.navigationBar = navBar;

但是它说 navigationBar 是只读的。是否可以将我现有的导航 Controller 与我添加到屏幕的导航栏链接起来?

最佳答案

在我看来,您可能实际上不想使用 UINavigationBar .正如引用文档中所述:

The UINavigationBar class implements a control for navigating hierarchical content. It’s a bar, typically displayed at the top of the screen, containing buttons for navigating up and down a hierarchy. The primary properties are a left (back) button, a center title, and an optional right button. You can specify custom views for each of these.

因此,如果您计划进行自定义,而不仅仅是添加按钮、更改它的颜色/背景、不透明度、隐藏等。您最好创建一个 UIView。模仿导航栏的外观和感觉。

这是一个如何给出 your UIView that gradient look of a navigation bar 的例子.

它要灵活得多,实际上也很容易做到,但您需要提前阅读和测试大量内容:)。

以防万一,如果您只是想添加按钮,您最好使用 UIToolbar相反

关于objective-c - 在 iOS 中使用自定义导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11619289/

相关文章:

objective-c - 将 scanf 与 NSString 一起使用

IOS 流套接字

ios - 在 10.8 的 Mac 上安装 ffmpeg ios 库 armv7、armv7s、i386 和 universal

objective-c - obj-c 委托(delegate)方法为空

objective-c - 从调度队列中的父作用域修改数据

iphone - UIImagePicker 收到名为 viewDidLoad 的内存警告并清除 UITextField

ios - 如何保存多个阵列的图像名称?

ios5 - UIBarButtonItem 外观 setTitleTextAttributes 不影响 UIControlStateDisabled 状态

iphone - URLForUbiquityContainerIdentifier 是否为 : return nil when network access is not available?

ios - UIScrollView 移动调整 UITextView 的大小