繁体   English   中英

使用不同屏幕的自定义导航栏?

[英]Using custom navigation bar for different screen?

我正在开发一个包含不同navigationBars的应用程序。

  • 标题和后退按钮
  • 标题,左键和右键
  • 带有通知图标的标题,带有徽章计数
  • 带有带徽章计数的购物车图标标题

考虑了两种不同的方法:

  1. programmatically在基本控制器中创建导航(通知和卡片的徽章图标动画可能难以动画吗?)
  2. 创建一个自定义的xibView ,可以将其作为子视图添加到导航中(可能很难检测到按钮的动作吗?)

什么是实现此行为的更好方法?

标准方法是拥有一个导航控制器 ,用于管理其导航栏。

您不会直接与导航栏进行交互(或使用分离的导航栏-这会给您带来很多关于布局问题的麻烦, UINavigationController会免费为您服务)。

要更改在每个屏幕上可见的按钮,请修改每个视图控制器的navigationItem属性(其leftBarButtonItemrightBarButtonItem等)。

这是 所有 文档

我建议您创建一个自定义的xib。 处理动作:让处理程序位于您自己的自定义类中,您可以定义一个协议,并使用该协议将操作事件传达给符合该协议的任何类。 我选择委托的原因是因为我们不需要很多控制器来获取事件(使用通知),而只需一个当前符合该委托的类即可。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM