我的iOS应用有多个UIViewControllers
,其中包含UITableViews
。我有一个名为ListScreenManager
的类,根据传递的数据,该类为各种UITableView
生成单元格。这是表委托实现之一(cellForrowAtIndex)。
static NSString *jobListTableIdentifier = @"JobListTableViewCell";
MetadataTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:jobListTableIdentifier];
NSMutableDictionary *dict;
if (tableView == self.searchDisplayController.searchResultsTableView){
dict = [theFilteredTaskData objectAtIndex:indexPath.row];
}
else{
dict = [theTaskData objectAtIndex:indexPath.row];
}
[MetrixListScreenManager setCellDataDictionary:dict];
if (cell == nil || cellReloadCount <= cellReloadLimit) {
cell = [MetrixListScreenManager generateCellForListScreen:self withReuseIdentifier:jobListTableIdentifier];
cellReloadCount++;
}
[SkinApplicationUITableViewController applySkinColorToRelevantControlsForCell:cell];
[MetrixListScreenManager populateCellDataForListScreen:self usingCell:cell andDataRow:dict];
在这个generateCellForListScreen
方法中,我动态生成UILabel / Buttons(单元格中有多个UILabel)。我想做的是使这些UILabels
动态高度,设置约束并调整{{ 1}}根据内容高度的高度。我设置了前导,顶部,宽度约束,现在我有2个问题。
UITableViewCell
动态高度?UILabel
高度?我只是通过添加2个UITableViewCell
来制作原型应用程序,这些约束具有前导,尾随,顶部和底部约束(这些标签是我在一个单独的类中生成的。不在具有我的UITableView的视图控制器内)。然后我将表格行高度设置为UILabel
并估计行高度为200.但我的行高度就像44高度。看起来它不知道约束。我怀疑这是因为我在一个单独的班级中生成这些。我对么?如果是这样,我怎么能克服这个问题呢?
请帮我。
感谢