为了在UIImagePickerControllerSourceTypeCamera中创建自定义工具栏,我必须关闭相机控件,如下所示:
pickerOne.showsCameraControls = YES;我想要显示缩放,闪光灯,切换相机,并将焦点放在UIImagePickerController上,但我想创建我的自定义视图。添加自定义视图时,只有在关闭cameraControls的情况下才会显示。
有没有办法不隐藏相机控件并自定义视图?或者我必须在中手动添加这些按钮?
发布于 2012-01-18 01:03:04
通过检查hittest方法中的接收视图,您可以忽略覆盖视图上的触摸。只需将此代码添加到您的覆盖视图中,该视图上的所有接触都将被忽略,但不会忽略其子视图上的接触。
-(id)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
id hitView = [super hitTest:point withEvent:event];
if (hitView == self) return nil;
else return hitView;
}如果今天在stackoverflow上读了这篇文章,但我不记得在哪里了,sry。
发布于 2011-06-06 16:45:19
我相信除了在您的自定义视图(覆盖)中实现原生功能之外,没有其他方法(至少是直接的方式)。
另一种方法(我还没有尝试过)是向UIImagePickerController根视图添加自定义视图(不使用cameraOverlay属性)。不建议/不允许这样做,但看起来会行得通。自动闪光灯/变焦/前置摄像头的原因...不要使用自定义视图,视图层次结构不同。
如果你看看流行的相机应用程序,它们中的大多数都实现了这些控件。而且,我也做了同样的事情。
事实上,实现它们应该不难。“'Tap to focus”很难实现,实际的focus是默认的。我们所需要做的就是在触摸周围画一个正方形。
https://stackoverflow.com/questions/6240960
复制相似问题