2009-12-17 68 views
0

好的。所以我有一个实现UIImagePickerControllerDelegate的ViewController。大。 我也有覆盖视图在我的选择器之上。 我想要调用takePicture的上述覆盖图上有一个按钮。拍照正在3.1上困难

我的问题是,这是如何完成的? takePicture不是我需要自己写的东西吗?它在UIImagePickerController中定义的权利?

选取器模式弹出良好,我可以通过相机看到图像,但是当我按下按钮拍摄照片时,出现问题。

我有这样的代码设置按钮:

[button addTarget:self action:@selector(takePicture) forControlEvents:UIControlEventTouchUpInside]; 

通过上述,我通常会得到一个NSException错误,但是当我打电话takePicture从一个单独的方法,它根本不火。

作为这个的一部分,我的picker delegate应该设置为overlay还是提供picker的viewcontroller?

此外,我的覆盖和我的视图控制器应该实现标头中的选择器代表?

在此先感谢。

+0

什么是3.1?请为您的标题/问题添加更多信息。 – Ash 2009-12-17 01:46:51

回答

1

takePicture方法在UIImagePickerController对象上。现在,我认为你的按钮在覆盖的视图控制器上调用takePicture。 (我不能肯定地告诉你,因为没有刊登上述方法的代码行中)。

所以它应该是

[button addTarget:picker action:@selector(takePicture) forControlEvents:UIControlEventTouchUpInside]; 

显然使这项工作的代码需要有选择器变量设置为指向UIImagePickerController;通常的做法是在应用程序委托中存储一个指向主视图控制器和/或图像选择器本身的指针。

只有一个类需要实现图像选择器委托;你可以决定你想要哪一个。

+0

谢谢!这就是诀窍! – monotreme 2009-12-17 07:21:27