iOS中的新秀。 我有一个Freeform ViewController,它有一个UIImageView和 UITableView就在其中。
我面临的问题是当我尝试滚动tableview时 由于自由形态的高度,一些物品保持隐藏状态 视图 - 控制。
我尝试使用以下代码以编程方式设置UItableview的高度 根据屏幕的大小。
let screenSize: CGRect = UIScreen.mainScreen().bounds
tableview.frame = CGRectMake(0,imageview.frame.height, 280, (screenSize.height -imageview.frame.height))
上面的代码无法调整tableview的大小。
有没有其他方法可以在运行时或设置UITableview大小 在故事板中。
解决方案
在为两个视图指定translatesAutoresizingMaskIntoConstraints = true后,使用自定义高度和宽度布局了我的两个视图后,我解决了这个问题。我根据我的设计和应用程序要求做了。
答案 0 :(得分:3)
如果您使用自动布局或约束,则必须
tableview.translatesAutoresizingMaskIntoConstraints = true
在应用新框架之前,新框架不会更新,因为它会因自动布局和约束而过度使用。
编辑:
1-如果您在故事板中的视图控制器中启用了[调整滚动视图插入],请将其禁用,然后进行测试和查看。
2-你以编程方式创建imageView吗?或者从界面构建器,你有约束吗?
3-您是否知道状态栏有高度,您还必须补偿它?
你使用导航栏吗?答案 1 :(得分:1)
UITableViewCell
身高有一个委托函数。
在这里指定特定单元格的indexPath并返回它的高度
(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if(indexPath.section == yourSection && indexPath.row == yourRow) {
return 140.0; //return height for required row
}
// "Else"
return someDefaultHeight;
}
答案 2 :(得分:0)
不要以编程方式设置Tableview高度。
只做一件事
采用Top,Bottom,Leading,Trailing约束并将常量值设置为0
将用户图像视图添加到tableview标题中。