IOS客户端Coding项目记录(六)

1:获取某一行的坐标

UITableViewCell *cell = [_myTableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];

[tipsView setY:CGRectGetMaxY(cell.frame) - 0.5];



- (void)setY:(CGFloat)y{

    CGRect frame = self.frame;

    frame.origin.y = y;

    self.frame = frame;

}

2:设置视图某个角的圆角(这边是左下跟右下)

 [self addRoundingCorners:UIRectCornerBottomLeft | UIRectCornerBottomRight cornerRadii:CGSizeMake(2, 2)];

 [self setClipsToBounds:YES];



- (void)addRoundingCorners:(UIRectCorner)corners cornerRadii:(CGSize)cornerRadii{

    UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:self.bounds byRoundingCorners:corners cornerRadii:cornerRadii];

    CAShapeLayer *maskLayer = [CAShapeLayer new];

    maskLayer.frame = self.bounds;

    maskLayer.path = maskPath.CGPath;

    self.layer.mask = maskLayer;

}

3:设置一个视图弹出来,可以先加载然后隐藏

if (!_inputTipsView) {

        _inputTipsView = ({

            EaseInputTipsView *tipsView = [EaseInputTipsView tipsViewWithType:EaseInputTipsViewTypeLogin];

            tipsView.valueStr = nil;

            

            __weak typeof(self) weakSelf = self;

            tipsView.selectedStringBlock = ^(NSString *valueStr){

                [weakSelf.view endEditing:YES];

                weakSelf.myLogin.email = valueStr;

                [weakSelf refreshIconUserImage];

                [weakSelf.myTableView reloadData];

            };

            UITableViewCell *cell = [_myTableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];

            [tipsView setY:CGRectGetMaxY(cell.frame) - 0.5];

            

            [_myTableView addSubview:tipsView];

            tipsView;

        });

    }

注意:因为这边输入框是在列表上,所以把要弹出的视图就addSubview到其上面;

cell.textField.keyboardType = UIKeyboardTypeEmailAddress;

            [cell configWithPlaceholder:@" 电子邮箱/个性后缀" andValue:self.myLogin.email];

            cell.textValueChangedBlock = ^(NSString *valueStr){

                weakSelf.inputTipsView.valueStr = valueStr;

                weakSelf.inputTipsView.active = YES;

                weakSelf.myLogin.email = valueStr;

                [weakSelf.iconUserView setImage:[UIImage imageNamed:@"icon_user_monkey"]];

            };

这样可以通过active属性进行控制它是否显示;

子视图(其实就是一个列表,并给它设置的大小)的这个属性控制:

- (void)setActive:(BOOL)active{

    _active = active;

    self.hidden = self.dataList.count <= 0 || !_active;

}

 4:根据不同的内容加载跟去除视图

-(void)configUI:(BOOL)haveData
{
    if (haveData) {
        //有数据
        if (self.curSearchImageNoDataView) {
            [self.curSearchImageNoDataView removeFromSuperview];
            self.curSearchImageNoDataView=nil;
        }
        
        if (!_myTableView) {
            _myTableView = [[UITableView alloc] initWithFrame:CGRectMake(0,0.5, SCREEN_WIDTH, SCREEN_HEIGHT) style:UITableViewStylePlain];
            _myTableView.backgroundColor = RGB(242, 242, 242);
            _myTableView.showsVerticalScrollIndicator = NO;
            _myTableView.showsHorizontalScrollIndicator=NO;
            _myTableView.tableHeaderView=[self addTableHeaderView];
            _myTableView.tableFooterView=[self addTableFootView];
            _myTableView.dataSource = self;
            _myTableView.delegate = self;
            _myTableView.separatorStyle = UITableViewCellSeparatorStyleNone;
            [_myTableView registerClass:[ZURoomImageCell class] forCellReuseIdentifier:NSStringFromClass([ZURoomImageCell class])];
            _myTableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadTableData)];

            [self.view addSubview:_myTableView];
            [_myTableView mas_makeConstraints:^(MASConstraintMaker *make) {
                make.edges.equalTo(UIEdgeInsetsMake(0.5, 0, 0, 0));
            }];
        }
        
    }
    else
    {
        //无数据
        if (self.myTableView) {
            [self.myTableView removeFromSuperview];
            self.myTableView=nil;
        }
        
        if (!self.curSearchImageNoDataView) {
            self.curSearchImageNoDataView=[[ZUSearchImageNoDataView alloc]init];
            [self.view addSubview:self.curSearchImageNoDataView];
            [self.curSearchImageNoDataView mas_makeConstraints:^(MASConstraintMaker *make) {
                make.top.mas_equalTo(0);
                make.left.and.right.and.bottom.mas_equalTo(0);
            }];
        }
        
        __weak typeof(self) weakSelf = self;
        [self.curSearchImageNoDataView initWithHeightValue:self.rongYunName doneBlock:^{
            [weakSelf addRoomImageAction];
        }];
    }
}

 

posted @ 2016-05-09 21:51  踏浪帅  阅读(308)  评论(0编辑  收藏  举报