在IOS5中将表格单元格对齐到底部

时间:2012-01-18 22:10:01

标签: objective-c xcode ios5 uitableview storyboard

我有一个UITableViewController,其中包含3个静态单元格。我想将整个桌子对齐到底部,而不是顶部。我试图在Xcode中设置几个设置位无法解决它。我怎么能这样做?

更新:所以,这是我想要的对齐方式,单元格为红色: enter image description here

谢谢

3 个答案:

答案 0 :(得分:6)

如果您手动计算行的高度,可以设置表格视图的contentInset(继承自UIScrollView)以向下推动行。如果更改表行,则必须手动更新插入。例如,如果所有行都具有相同的高度:

CGFloat totalRowHeight = [self.tableView numberOfRowsInSection:0] * self.tableView.rowHeight;
CGFloat topInset = MAX(0, self.tableView.bounds.size.height - totalRowHeight);
self.tableView.contentInset = UIEdgeInsetsMake(topInset, 0, 0, 0);

答案 1 :(得分:1)

您可以使用CGRect定位表格并将其设置为UITableView's框架属性。

这里有 粗略 示例:

CGRect someFrame = CGRectMake(<x coordinate>, <y coordinate>, <width>, <height>);
myTableView.frame = someFrame;

我不清楚你的应用程序的底部和顶部意味着什么。你的意思是在它的容器底部?整个屏幕的底部?

如果您希望它位于容器的底部,那么您可以这样做来计算新的y位置:

CGFloat yPos = myTable.superview.frame.size.height-myTable.frame.size.height;

修改

正如@robmayoff建议的那样,桌子的大小适合细胞。只需将tableview的高度设置为44.0 * 3(单元格的默认高度x 3个单元格),并使用上面的示例修改其y位置。

答案 2 :(得分:1)

对表格视图的顶部内容插入使用大的正值。这将按照您指定的方式将单元格向下推。