经验之谈—自定义tabbar(继承于UITabBar)

本文探讨了自定义TabBar的两种方法,重点在于继承UITabBar时的细节处理。在继承过程中,主要目标是修改子控件的frame或添加新控件。文章提醒开发者注意,系统UITabBar中存在除UITabBarButton外的两个子视图:UITabBarBackgroundView和UIImageView。在设置frame时,需避免被这两个视图干扰,并提供了相应的判断和处理方法。
摘要由CSDN通过智能技术生成
  • 自定义tabbar一般来说有两种方式,一种是继承于系统的UITabBar,一种是继承与UIView的tabbar。
  • 我们现在来看一下继承与UITabBar这种情况中需要注意的一些细节。其实继承与UITabBar我们无非是想修改一下tabbar中的子控件的frame或者是添加子控件等。
  • 我们接下来添加一个按钮到自定义的tabbar上。
  • 注意的地方:我们先打印一下看看UITabBar里面存在的子控件:
    tabbar

  • 我们可以看出,这里打印出了除UITabBarButton之外的两个控件:UITabBarBackgroundView和UIImageView。

  • 从尺寸我们就能很明显的看出。UITabBarBackgroundView就是这个tabbar的背景图片,然后UIImageView就是上面的那一根线。那么在自定义控件设置frame的时候,就不能直接拿出下标或者self.subviews.count。来获得子控件的个数了。要进行判断了:
for (UIView *child in self.subviews)
    {
        Class class = NSClassFromString(@"UITabBarButton");
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值