创建并初始化自定义 UITabBarItem 类
Posted
技术标签:
【中文标题】创建并初始化自定义 UITabBarItem 类【英文标题】:Create and Initialise Custom UITabBarItem Class 【发布时间】:2018-04-20 21:31:00 【问题描述】:我正在构建一个包含四个 UITabBarItems
的应用程序。他们都应该看起来一样。我没有在各自的UIViewController
中自定义它们,而是尝试构建一个自定义的UITabBarItem
类并让UITabBarItems
继承自它。
到目前为止,这是我所做的工作:
class CustomTabBarItem: UITabBarItem
func customiseTabBarItems()
// Customises the item on the tab bar
// For normal state
setTitleTextAttributes([NSAttributedStringKey.font : Fonts.small!, NSAttributedStringKey.foregroundColor: Colours.grey], for: .normal)
// When highlighted
setTitleTextAttributes([NSAttributedStringKey.font : Fonts.small!, NSAttributedStringKey.foregroundColor: Colours.white], for: .highlighted)
并且我已将每个 UITabBarItem
设置为情节提要中我的“CustomTabBarItem”的子类。
但是,问题是我的UITabBarItems
没有显示该功能。
有什么建议吗?
【问题讨论】:
如果您只想更改项目的颜色,您可以通过情节提要轻松完成 【参考方案1】:我正在构建一个包含四个 UITabBarItems 的应用程序。它们应该看起来都一样
实现这一点的方法不是尝试某种 UITabBarItem 子类,而是将 appearance proxy 用于 UITabBarItem。例如:
UITabBarItem.appearance().setTitleTextAttributes( // ...
在您的应用委托didFinishLaunching
中执行此操作。所有标签栏项目都将根据您对外观代理的命令进行自定义。
【讨论】:
以上是关于创建并初始化自定义 UITabBarItem 类的主要内容,如果未能解决你的问题,请参考以下文章
使用情节提要创建的没有标题的自定义 UITabbarItem
如何使用自定义 UIImage 作为 UITabBarItem 徽章?