为什么不是UIImage本身而是UIImage视图

时间:2011-05-13 05:21:28

标签: iphone uiimageview uiimage uipickerview

我正在学习为iPhone开发应用程序。我按照Apress的一本书,我觉得非常有用。但由于没有什么是完美的,一些问题没有得到很好的描述,只是跳过了。在其中一个应用程序中,我必须为pickerview的五个组件中的每一个分配五个图像。但我的问题是为什么我们不能使用UImage本身的实例,而是使用UIImageView在选择器上显示。

3 个答案:

答案 0 :(得分:3)

如上所述,您问我们为什么不能使用UIImage代替UIImageView作为UIPickerView的组件。

UIImageNSObject类的子类,如果我们用 MVC 来讨论它的 M(模型) 。并且模型本身在使用之前是没有的。

另一方面,

UIImageViewUIView的子类,代表 MVC 中的 V(查看) 所以它使用你的模型作为其内容。

所以,它们是两个不同的东西,而不是替代品。此外,如果您浏览UIPickerView的类文档,那么您会发现它有方法

- (UIView *)viewForRow:(NSInteger)row forComponent:(NSInteger)component

配置指定行组件的视图。所以它意味着我们需要视图(UIImageView)而不是模型类(UIImage)。这里的组件可以返回UIView的子类。

请参阅apple的文档。

谢谢,

答案 1 :(得分:1)

您需要一个框架来放置您的照片,类似地您需要UIImageView作为占位符来放置UIImage。

答案 2 :(得分:0)

UIImage只是从文件加载的图像。 View可以处理触摸事件,只显示视图。