iOS开发中自定义tableView中某个cell的高度

在开发中遇到一个问题:采用了自适应的tableview高度,结果有一个新增的cell的高度老是不准,由于它的indexpath.row是不确定的,所以没法通过heightfForRow代理方法定死,只好自己弄,也就是说要自己设定tableview中某个位于不固定row的cell的高度的问题。

查阅了很多文章都没找到满意答案,后来通过以下方式解决:

 UITableViewCell *myCell=[self tableView:tableView cellForRowAtIndexPath:indexPath];//获取当前indexPath中的cell实例
    if( [myCell isKindOfClass:[AddInstructionCell class]] ){
        return 300;
    }else
    {
    self.tableView.rowHeight = UITableViewAutomaticDimension; //其他类的cell都自动计算
        self.tableView.estimatedRowHeight = 300;
        return self.tableView.rowHeight;
    }
上述代码写入HeightfForRow里面即可。AddInstructionCell是我自定义的一类cell。也就是需要设置高度的那个cell的类。
当然前提是,tableview里只能有一个这类cell,或者你希望所有这类cell的高度都变成自己设定的值(300).
相信大家一看代码就明白了,其实是很简单的一个原理,就是看能不能想到这样来操作。
欢迎批评指正和交流!

你可能感兴趣的:(iOS开发中自定义tableView中某个cell的高度)