0

我有一个 iPad 应用程序,允许用户使用UIImagePickerController. 图像存储在一个名为photos的数组中,缩略图放置在UITableView如图所示的 a 中。

在此处输入图像描述

当用户点击缩略图时,使用以下代码在UIImage名为photoImageView中显示完整图片。我遇到的问题是知道照片是以横向(缩略图 1 和 3)还是纵向(缩略图 2)拍摄的,以便我可以UIImage正确旋转显示。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
photoImageView.image=[photos objectAtIndex:indexPath.row];
photoImageView.frame=CGRectMake(190, 134, 700, 448);
}

可能我也需要将方向存储在数组中 - 这可能吗?

还有一种方法可以使缩略图居中UITableView吗?

4

2 回答 2

2

您可以使用UIImage的imageOrientation属性

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    [picker dismissViewControllerAnimated:YES completion:nil];
    self.photo = (UIImage*)[info objectForKey:UIImagePickerControllerOriginalImage];

     //self.photo.imageOrientation is the orientation
}
于 2013-11-14T07:22:26.803 回答
1

获取对象的size属性UIImage并比较widthheight。也可能有其他方法可以做到这一点,但这就是我的做法。

为了使图像居中UITableView(假设您指的是 的imageView属性UITableViewCell),请将 的contentMode属性设置UIView为您想要的任何内容(UIViewContentModeScaleAspectFill通常这样做)。

于 2013-11-14T07:17:24.480 回答