UINavigationBar 的 UIAppearance ios8

UIAppearance for UINavigationBar ios8

在我的应用程序中,目前我已经实现了自定义视图来代替 UINavigationBar。但是有14-15个屏幕。所以我在每个屏幕上重复创建了顶视图。

因此,在浏览解决方案时避免这种重复。我遇到了 UIAppearance 的概念。但我不知道如何实施。我也了解了它的一些基本概念,但我仍然很困惑。

我的顶视图在每个屏幕上都有点不同。就像在 4-5 屏幕中一样,有两个按钮(左侧的后退按钮和右侧的呼叫按钮),中间有一个标签。

然后在其他4-5个屏幕中有两个按钮(左边是取消按钮,右边是呼叫按钮),中间有一个标签。

然后在其他2-3个屏幕中有两个按钮(左侧的侧边菜单按钮和右侧的呼叫按钮),中间有一个标签和图标。

谁能告诉我如何使用 UIAppearance 实现它? 提前致谢!

您不能通过 UIAppearance 设置按钮。如果您在每个页面上设置 titleTextAttributes(例如,字体、大小和颜色),您可以通过 UINavigationBar 外观来实现,如下所示:

[[UINavigationBar appearance] setTitleTextAttributes:attributes];

属性指针是一个包含您的文本属性(NSFontAttributeName、NSForegroundColorAttributeName 等)的 NSDictionary