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也没有问题

代理跟协议的区别

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

上一篇:【软件工程】结对编程总结


下一篇:学习ios键盘和textfield之间操作体会