美文网首页
FrameModel计算自定义cell高度

FrameModel计算自定义cell高度

作者: 小小白衣 | 来源:发表于2017-09-13 10:14 被阅读0次

    TestModel数据模型

    TestModel.h
    @property(nontomic,copy)NSString *name;
    @property(nontomic,copy)NSString *headerIcon;
    @property(nontomic,copy)NSString *content;
    

    FrameModel

    FrameModel.h
    @property(nontomic,assign)CGRect nameLabelFrame;
    @property(nontomic,assign)CGRect headerIconFrame;
    @property(nontomic, assign)CGRect contentLabelFrame;
    
    @property(nontomic, strong)TestModel *testModel;
    
    @property(nontomic, assign)CGFloat cellHeight;
    
    根据数据模型计算各个控件的Frame
    -(void)setTestModel:(TestModel*)testModel
    {
            _testModel       = _testModel;
            _nameLabelFrame  = ....
            _headerIconFrame = ....
            _contentLabelFrame = ....
          
            _cellHeight = ....
    }
    

    TestCell

    TestCell.h
    //控件...
    @property(nontomic, strong)FrameModel *frameModel;
    
    TestCell.m
    - initWithStyle: identify
    {
          if(self = [super init....])
        {
              self.contentView addSubView:...
        }
    }
    
    -(void)setFrameModel:(FrameModel*)frameModel
    {
            _frameModel = frameModel;
    
            //设置数据
            self.nameLabel.text = frameModel.testModel.name;
            ...........
    
            //设置Frame
            self.nameLabel.frame = frameModel.nameFrame;
            ...........  
    }
    

    VC

    加载完数据
    此时数据原数组里应该存放的是FrameModel
    -loadData
    {
        for(...;....;.....){
             TestModel *testModel = ..........
             FrameModel *fameModel = [[FrameModel alloc]init];
             frameModel.testModel = testModel;
             [_dataArray addObj:frameModel]
        }
    }
    
    
    
    - heightForRowAtIndexPath
    {
            FrameModel *frameModel =  _dataArray[indexPath.row];
            return frameModel.cellHeight;
    }
    
    -cellForRowAtIndexPath
    {
            ....
            cell.frameModel = _dataArray[indexPath.row];
    }
    

    相关文章

      网友评论

          本文标题:FrameModel计算自定义cell高度

          本文链接:https://www.haomeiwen.com/subject/qqkksxtx.html