我有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;
}
}
答案 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;
}
}