zoukankan      html  css  js  c++  java
  • iOS开发项目之四 [ 调整自定义tabbar的位置与加号按钮的位置]

    自定义tabbar与按钮的添加

    01 - 把系统的tabbar用我们自己的覆盖

     

     LHQTabBar *lhqTabBar = [[LHQTabBar alloc]init];

        

        [self setValue:lhqTabBar forKeyPath:@"tabBar"];



    02 对于系统私有的属性,可以通过运行时或者KVC

     

    03 设置每个tabbar的位置

     

     

     //2 调整UItabbarBtn的大小

        //2.1先定义每个tabbar的宽度

        CGFloat tabbarBtnW = self.width *0.2;

        //2.2for 循环遍历所有的子控件

        

        NSInteger index = 0;

        for (int i = 0;i < self.subviews.count;i++){

            //2.3 拿到每一个子控件

            UIView *view = self.subviews[i];

            //2.4判断是否是UITabBarButton这个子控件

            if([viewisKindOfClass:NSClassFromString(@"UITabBarButton")]){

                view.width = tabbarBtnW;

                view.x = index*tabbarBtnW;

            

                    index ++;

                if(index == 2){

                    index++;

                    

                }

    //

    //            if(index == 1){

    //                index++;

    //                

    //            }

    //              index ++;

                

            }

            

        }

        

     



    04   什么时候用代理,什么时候用block

    如果一个自定义控件要抛出的消息比较多用代理,如果一个或者两个的话,用block也没有问题

     

    代理跟协议的区别

    协议是写好的规则,代理是要遵守的东西

  • 相关阅读:
    SpringCloud
    Linux
    SpringBoot
    秒杀系统设计
    设计模式
    数据库(mysql)
    Java web
    c#常用控件及简写
    C#常用的form窗体属性(最大化、最小化、窗体居中)
    C#中使用IndexOf()判断字符串在字符串数组中第一次出现的索引位置
  • 原文地址:https://www.cnblogs.com/LiLihongqiang/p/5545656.html
Copyright © 2011-2022 走看看