我已经尝试了很多事情,但不可能找到一种方法来将customNumber的lineNumber标记为UITabBarItem.0(我想在两行中获得标题)。UITabBarItem标签中的多行
有没有办法做到这一点?
我已经尝试了很多事情,但不可能找到一种方法来将customNumber的lineNumber标记为UITabBarItem.0(我想在两行中获得标题)。UITabBarItem标签中的多行
有没有办法做到这一点?
现在它包含两个子视图。在0处它是imageView,在1处它是标签。 现在让imageview的高度稍微小一些,这样就可以让标签的高度稍大一些,以便有多条线。通过代码将标签的numberoflines的设置为0。
let viewTabBar = tabBarItem.value(forKey: "view") as? UIView
let imageView = viewTabBar?.subviews[0] as? UIImageView
let label = viewTabBar?.subviews[1] as? UILabel
现在玩这个标签。
你不能这样做UIBarButtonItem
,因为它没有财产titleView
像UINavigationItem
!
您只能将字符串设置为标题和标签图像!而已!
如果您可以选择将标签设置为tabbaritem的titleview,那么您可以使用numberofline 0获取标签,但在此您只能设置字符串!
更稳定的解决方案:
guard let view = tabBarItem?.value(forKey: "view") as? UIView,
let label = (view.subviews.flatMap{ $0 as? UILabel }).first,
let imageView = (view.subviews.flatMap{ $0 as? UIImageView }).first else { return }
@ chirag90这是关于一个导航栏的标题,而不是一个标签栏项目的冠军。 – the4kman
你想在UITabBarItem标签它的意思是你也希望它的触摸事件(我猜)?那么你可以直接使用多行的UIButton。 –
“标题标签”未公开...您几乎可以肯定需要使用自定义标签栏。 – DonMag