自动调整UITableViewCell的高度以适应iOS 6中的UIImageVIew

时间:2013-01-29 07:31:10

标签: ios uitableview uiimage

我有uiimageview属性在我的表视图中显示图像,并希望让一个特定的表视图单元格根据uiimageview中图像的高度更改其高度。以下是我的所作所为。不确定为什么tableview单元格的高度没有改变...... :(

@interface BoatViewController () <UIImagePickerControllerDelegate, UINavigationControllerDelegate, UITextFieldDelegate>

@interface BoatViewController () <UIImagePickerControllerDelegate, UINavigationControllerDelegate, UITextFieldDelegate>

@property (nonatomic, weak) IBOutlet UIImageView *boatImageView;

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    if (indexPath.section == 0 && indexPath.row == 0) {
        return self.boatImageView.image.size.height;
    }else{
        return 44;
    }
}

2 个答案:

答案 0 :(得分:0)

尝试在所有内容加载完成后重新加载表视图数据。可能是在调用该方法时,iOS尚未完成计算帧的最终大小。

在viedDidAppear方法中添加调用以重新加载tableview。看看它是否有帮助。

答案 1 :(得分:0)

尝试此代码希望它有所帮助。

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    if (indexPath.section == 0 && indexPath.row == 0) {

    CGSize size = image.size; // Assign the image what you want to display.

  //  self.boatImageView.frame=CGRectMake(0, 0, size.width, size.height);

    return size.height;

    }else{
        return 44;
    }
}