如何使用Objective C在UItableView中增加UIView高度?

问题描述 投票:0回答:1

我是iOS编程的新手,我已经实现了UITableviewController。我把UIView放在UITableView里面。我在UIView里面设计了标签,文本字段和tableview。我的问题是,当我根据数组计数增加动态tableview时,我想增加我的UIView高度。我不知道该怎么做?以下是我的设计结构,

UITableViewController---          
       UIView-----               (1)
           Label---Label         (2)
           label---Label         (3)
           label---              (4)
           UItableview           (5)
           textfield             (6)
           textfield             (7)
and so on

下面我已成功增加(5)身高而且我想增加(1)身高我不知道怎么办?任何人都可以建议解决这个问题?我试过以下代码。

-(void)viewDidLayoutSubviews{


    CGFloat numberofrows=creditList.count;
    height = numberofrows*propertytable.rowHeight;
    _tableviewheight.constant = height;

    propertytable.frame =CGRectMake(propertytable.frame.origin.x,propertytable.frame.origin.y, propertytable.frame.size.width,_tableviewheight.constant);
    CGRect myviewframe=mainview.frame;
    NSLog(@"The myviewframe value is %f",myviewframe.size.height);


    mainview.translatesAutoresizingMaskIntoConstraints=YES;
    myviewframe.size.height=5000;

    mainview.frame=myviewframe;
    mainview.frame = CGRectMake(0,0,mainview.frame.size.width, 5000);
    mainview.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
    mainview.contentMode = UIViewContentModeScaleAspectFit;
[mainview layoutIfNeeded];

      }
ios objective-c iphone uitableview uiview
1个回答
1
投票

如果对象具有自动布局,请尝试以下操作:

- (void)viewDidLoad {
    self.tableView.rowHeight = UITableViewAutomaticDimension;
    self.tableView.estimatedRowHeight = 105; //Default Height
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    return UITableViewAutomaticDimension;
}
© www.soinside.com 2019 - 2024. All rights reserved.