新浪微博加号按钮OC代码

xiaoxiao2021-02-28  99

#import "WBTabBar.h" @interface WBTabBar() /// 加号按钮 @property(nonatomic,weak) UIButton *plusBtn; @end @implementation WBTabBar -(instancetype)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if(self){ // 添加一个+号按钮 到tabbar中 UIButton *plusBtn = [[UIButton alloc] init]; // 设置背景 [plusBtn setBackgroundImage:[UIImage imageNamed:@"tabbar_compose_button"] forState:UIControlStateNormal]; [plusBtn setBackgroundImage:[UIImage imageNamed:@"tabbar_compose_button_highlighted"] forState:UIControlStateHighlighted]; // 增加+号图片 [plusBtn setImage:[UIImage imageNamed:@"tabbar_compose_icon_add"] forState:UIControlStateNormal]; [plusBtn setImage:[UIImage imageNamed:@"tabbar_compose_icon_add_highlighted"] forState:UIControlStateHighlighted]; // 大小 [plusBtn sizeToFit]; // 监听事件 [plusBtn addTarget:self action:@selector(plusClick) forControlEvents:UIControlEventTouchUpInside]; [self addSubview:plusBtn]; self.plusBtn = plusBtn; } return self; } // 加号按钮点击事件 - (void)plusClick{ NSLog(@"加号按钮被点击了"); } // 标签按钮布局 - (void)layoutSubviews{ [ super layoutSubviews ]; // 加号按钮居中显示 self.plusBtn.translatesAutoresizingMaskIntoConstraints = false; //水平居中 NSLayoutConstraint *plusBtn_CenterX = [self.plusBtn.centerXAnchor constraintEqualToAnchor:self.centerXAnchor]; //垂直居中 NSLayoutConstraint *plusBtn_CenterY = [self.plusBtn.centerYAnchor constraintEqualToAnchor:self.centerYAnchor]; //宽度约束 NSLayoutConstraint *plusBtn_Width = [self.plusBtn.widthAnchor constraintEqualToConstant:64]; //高度约束 NSLayoutConstraint *plusBtn_Height = [self.plusBtn.heightAnchor constraintEqualToConstant:44]; [NSLayoutConstraint activateConstraints:@[plusBtn_CenterX,plusBtn_CenterY,plusBtn_Width,plusBtn_Height]]; } /// 其他按钮尺寸及位置 // 按钮索引 CGFloat index = 0; // 按钮宽度 CGFloat itemW = self.bounds.size.width / 5; CGFloat itemH = self.bounds.size.height; for (UIView * subView in self.subviews) { if ([subView isKindOfClass:NSClassFromString(@"UITabBarButton")]) { // 设置宽度 subView.frame = CGRectMake(itemW * index, 0, itemW, itemH); index += 1; if (index == 2) { index += 1; } } }
转载请注明原文地址: https://www.6miu.com/read-55975.html

最新回复(0)