在社区应用程序开发中,我的任务是将iPhone应用程序制作成iPad应用程序。
根据文档,我使用以下代码生成我的相机视图:
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
self.imagePickerController = [[UIImagePickerController alloc] init];
self.imagePickerController.delegate = self;
self.imagePickerController.sourceType = sourceType;
if (sourceType == UIImagePickerControllerSourceTypeCamera) {
if ([UIImagePickerController isCameraDeviceAvailable:UIImagePickerControllerCameraDeviceFront]) {
self.imagePickerController.cameraDevice = UIImagePickerControllerCameraDeviceFront;
}
self.imagePickerController.allowsEditing = YES;
self.imagePickerController.cameraCaptureMode = UIImagePickerControllerCameraCaptureModePhoto;
}
popover = [[UIPopoverController alloc] initWithContentViewController:self.imagePickerController];
[popover presentPopoverFromRect:self.profilePicture.frame
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionAny
animated:YES];
return;
}
但是当它产生时,我会得到这个令人讨厌的“额外幽灵”相机按钮......
它不起作用,似乎只是嘲笑我。
如果我要求对象隐藏其输入按钮,则所有按钮都会消失。我认为没办法告诉那个特定的按钮。
我发现它只是第一次出现。如果我关闭并重新打开弹出窗口,它就消失了......
答案 0 :(得分:1)
可悲的是,这似乎是iOS 6本身的一个错误。但是,有一些可能的解决方法。
您可以将图像选择器的showsCameraControls
属性设置为false。这将删除幽灵般的图像,但其他控件也将被删除。您必须使用按钮编写自己的视图,并使用什么来调用正确的操作。
你说如果关闭并重新打开弹出窗口,按钮就会消失。您可以将选择器的showsCameraControls
属性设置为false,然后在显示选择器之前返回true。如果它不起作用,请尝试在初始化选择器时创建一种假的打开/关闭操作。