iphone - 图像的缩略图 View

标签 iphone objective-c

我想在 View Controller 中将一些图像显示为缩略图,但我不知道该怎么做。如果可能的话,任何人都可以给我一些想法或示例代码。

最佳答案

您是在问如何从较大的图像创建缩略图,还是在询问如何构建一个可以很好地显示它们的 View Controller ?

构建 View Controller :

您可以使用 the Three20 project 中的 TTPhotoViewController ( description ),其作用类似于 iPhone 的内置相机胶卷以查看图像。

可以看看the Scrolling sample code来自 apple,在 this question about using it for thumbnails 中提到.

如果您想自己构建一个,您可以考虑使用 GridView来自 the moriarty library ,作为 UIScrollView 中的大网格,或者在 UITableView 中以更高效的逐行方式显示。之前有一个关于 optimized image loading in a UIScrollView 的问题.

从较大的图像创建缩略图:

缩小图像的代码最简单的方法是简单地将其显示在 UIImageView 中,并将框架设置为您想要的较小尺寸 - 它会为您缩放。

如果您想保存缩略图,或者关心内存使用情况,您可以创建一个硬缩放版本。下面的示例代码取自 this blog post ,并且可以作为类别方法添加到 UIImage:

- (UIImage*) imageScaledToSize: (CGSize) newSize {
  UIGraphicsBeginImageContext(newSize);
  [self drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)];
  UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
  UIGraphicsEndImageContext();

  return newImage;
}

最后,这是一个关于 masking out round corners on an image 的问题,类似于主屏幕上使用的应用程序图标。

已添加

使用图像的内置缩略图:

有一个名为 CGImageSourceCreateThumbnailAtIndex 的好函数可以理解某些图像数据格式的内置缩略图。您可以在 the Image I/O Programming Guide 中的从图像源创建缩略图图像 下看到一些有用的示例代码。来自 Apple。

关于iphone - 图像的缩略图 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1215869/

相关文章:

ios - xcode 6,调整 inputAccessoryView 的大小

iphone - iOS开发者有没有 'themes'?

iphone - 如何调整 iPhone 中的 AlertView 大小

iphone - 在iPhone的SQLite中插入大量数据

objective-c - 代码 : Count elements in string array

ios - 带有 UITabbar 的 UINavigationController 中的方向锁定

ios - 通过 objective-c 模糊图像

ios - 应用程序在 iPad 1 中崩溃而没有任何内存警告,但在 iPad 3 中运行

objective-c - 如何在 xcode 5 iOS 7 中以编程方式编辑 plist?

iphone - 苹果的 MultipleDetailViews 示例中调用了 numberOfRowsInSection 但未调用 cellForRowAtIndexPath