首页 > 代码库 > 自定制tabBar点击不同页面会多个同时点亮的情况

自定制tabBar点击不同页面会多个同时点亮的情况

我先解释一下这个bug:

我自定制tabBar的时候用4个按钮代替,按钮设置点中和未点中的图片,然后切换不同页面的时候应该是只有一个是点中状态,但是我的会出现多个甚至全部点中的情况,搞了半天才知道是哪的问题。

for (int i=0; i<4; i++) {

        //这里写button的直接父控件bottomBg再去找tag,不然会出问题

       UIButton * button = (UIButton *)[bottomBgviewWithTag:100+i];

//UIButton * button = (UIButton *)[self.view viewWithTag:100+i];


        button.selected =NO;

    }

    btn.selected =YES;

self.selectedIndex = btn.tag-100;


如上边代码所示,问题出在根据tag值找button的时候,原来我是从self.view上找的,而button在bottomBg上,bottomBg在self.view上,间接找我以为没有问题,但是确实不行。

所以大家以后通过tag值找控件最好是直接从父类控件上找,就不会有问题了。具体是为什么,太具体的原因我也不了解,谁知道可以指导一下~


自定制tabBar点击不同页面会多个同时点亮的情况