TableView具有动态高度

时间:2012-08-13 11:27:04

标签: objective-c ios uitableview height

我在Objective-c上编程。我有一个带有tableView的viewController。我想我的tableView有一个动态高度,如下图所示(Tweetbot)。我该怎么做?

enter image description here

3 个答案:

答案 0 :(得分:2)

是。然而,不清楚这个表是“短” - 可能是它有一个透明的背景,只有两个单元格。在任何情况下,要创建一个短表,您将创建一个具有普通视图的UIViewController类(即UIView)。创建一个UIImageView并将图像添加到它(假设您想要一个大图像),并将其添加到视图中(您可以在IB中执行此操作)。然后创建一个所需高度的UITableView,并将其添加到UIIView的子视图中。现在你有一个带有两个子视图的容器视图(self.view),该表是最后一个(因此它位于顶部)。

答案 1 :(得分:1)

最喜欢的tweetbot不会在UITableView上添加UIViewController。他们很可能从头开始使用UITableViewController,给它一个背景,并且(在这种情况下)只显示两个具有自定义高度的单元格。使用表视图时,这也是“方式2-go”。

答案 2 :(得分:0)

您应该使用-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath方法并在此方法中使用if condition或switch case。

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    if (indexPath.row ==2) {
        return 89;//write your image view's height here.
    }
    return 44;
}