| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- //
- // CloudRouterShowView.m
- // zhuxun
- //
- // Created by winsoft on 17/6/28.
- //
- //
- #import "CloudRouterShowView.h"
- #define MarginLR 10
- #define MarginBetweenBtn 5
- #define MarginTB 4
- @interface CloudRouterShowView()
- @end
- @implementation CloudRouterShowView
- + (CloudRouterShowView *)cloudRouterShowViewWithItems:(NSArray *)items bkColors:(NSArray *)bkColors
- {
- CloudRouterShowView *cloudRouterShowView = [[CloudRouterShowView alloc]initCloudRouterShowViewWithItems:items bkColors:bkColors];
-
- return cloudRouterShowView;
- }
- - (instancetype)initCloudRouterShowViewWithItems:(NSArray *)items bkColors:(NSArray *)bkColors
- {
- if (self = [super init]) {
-
- for (int i = 0; i < items.count; i++) {
-
- UIButton *actionBtn = [[UIButton alloc]init];
- actionBtn.tag = i;
- [actionBtn setTitle:items[i] forState:UIControlStateNormal];
- [actionBtn setBackgroundColor:bkColors[i]];
- [actionBtn addTarget:self action:@selector(actionForBtn:) forControlEvents:UIControlEventTouchUpInside];
- [self addSubview:actionBtn];
-
-
- }
-
- }
-
- return self;
- }
- - (void)actionForBtn:(UIButton *)btn
- {
- if (self.actionBlock) {
- self.actionBlock(btn.tag);
- }
- }
- - (void)setIndexActionBtnEnableWithIndex:(NSInteger)index enable:(BOOL)enable
- {
- UIButton *targetBtn = self.subviews[index];
-
- targetBtn.enabled = enable;
-
- targetBtn.backgroundColor = [UIColor lightGrayColor];
- }
- - (void)layoutSubviews
- {
- [super layoutSubviews];
-
-
- CGFloat btnW = (self.frame.size.width - 2 * MarginLR - (self.subviews.count - 1) * MarginBetweenBtn)/self.subviews.count;
-
- CGFloat btnH = self.frame.size.height - 2 * MarginTB;
-
- for (UIButton *subBtn in self.subviews) {
-
- CGFloat btnX = subBtn.tag * (btnW + MarginBetweenBtn) + MarginLR;
- CGFloat btnY = (self.frame.size.height - btnH)/2.0f;
- subBtn.layer.masksToBounds = YES;
- subBtn.layer.cornerRadius = 2;
- subBtn.frame = CGRectMake(btnX, btnY, btnW, btnH);
- }
- }
- @end
|