在点击UIImageView时打开UIImagePicker

时间:2012-01-31 18:31:14

标签: objective-c xcode uiimageview uibutton uiimagepickercontroller

当用户点击UIImageview时,我需要允许用户从源类型相机或照片库添加照片。

我不想通过单击UIButton来呈现uiimagepicker控制器,我想允许用户通过点击imageview来添加它。

我怎样才能做到这一点?我应该在图像视图中添加按钮,当点击发生时,会显示带按钮相机和照片库的操作表,当用户从操作表中选择其中一个按钮,允许他将照片添加到uiimageview时?

2 个答案:

答案 0 :(得分:2)

你仍然可以使用UIButton,只需将该按钮的视图作为你想要的图像。

UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
btn.frame = CGRectMake(0,0,100,100); //edit for you own frame
UIImage *img = [UIImage imageNamed:@"myimage.png"];
[button setImage:img forState:UIControlStateNormal];

这将允许您使用图像作为按钮。

答案 1 :(得分:0)

@Amit Shah有正确的答案 - 你应该使用一个按钮。

但是如果由于某种原因你必须使用UIImageView(听起来不像你那样) - 你可以继承UIImageView并覆盖touchesBegan / touchesEnded方法:

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIResponder_Class/Reference/Reference.html