我是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];
}
答案 0 :(得分:1)
如果对象有自动布局,请尝试:
- (void)viewDidLoad {
self.tableView.rowHeight = UITableViewAutomaticDimension;
self.tableView.estimatedRowHeight = 105; //Default Height
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return UITableViewAutomaticDimension;
}