Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/112.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone XCode iO6:UIWebView从选择照片返回后返回黑屏_Iphone_Ios_Xcode_Uiwebview_Ios6 - Fatal编程技术网

Iphone XCode iO6:UIWebView从选择照片返回后返回黑屏

Iphone XCode iO6:UIWebView从选择照片返回后返回黑屏,iphone,ios,xcode,uiwebview,ios6,Iphone,Ios,Xcode,Uiwebview,Ios6,以下是导致我的应用程序返回黑屏的事件序列: 1.)我通过应用程序的UIWebView在我的网站上选择一个按钮,该按钮允许我更改个人资料图片 2.)应用程序从屏幕底部调出三个标准选项:“拍照或视频”、“选择现有”、“取消” 3.)如果我选择前两个选项中的任何一个,然后选择或拍照,我的应用程序将返回显示黑色屏幕。配置文件图片未更改。我还注意到控制台窗口中出现以下消息:“UIFileUploadFallbackRootViewController:0x1c590e60的开始/结束外观转换调用不平衡。”

以下是导致我的应用程序返回黑屏的事件序列:

1.)我通过应用程序的UIWebView在我的网站上选择一个按钮,该按钮允许我更改个人资料图片

2.)应用程序从屏幕底部调出三个标准选项:“拍照或视频”、“选择现有”、“取消”

3.)如果我选择前两个选项中的任何一个,然后选择或拍照,我的应用程序将返回显示黑色屏幕。配置文件图片未更改。我还注意到控制台窗口中出现以下消息:“UIFileUploadFallbackRootViewController:0x1c590e60的开始/结束外观转换调用不平衡。”

奇怪的是,当从我的应用程序的UIWebView访问时,这个移动网站的“加载照片”功能就可以正常工作。我第一次注意到这个问题是在升级到iOS6之后。关于我的网站或应用程序可能发生的变化或我现在需要适应的内容,有什么想法吗

提前感谢您提供的任何帮助

2013年2月17日更新:

移动网站上用于加载照片的HTML代码:

<form class="appnitro" enctype="multipart/form-data" method="post" action="mysite.php">
<input id="file1" name="file1" class="button_text" type="file" size="50px"/> <br />
<input id="submitpic" class="button_text" type="submit" name="submit" value="Save Picture" />
</form>



注意:使用jquerymobile。此外,如果使用Safari访问移动网站,上传照片功能也可以正常工作。只有在尝试从应用程序内使用UIWebView上载新照片时,才会显示黑屏。

这似乎是因为未设置rootViewController

您可能会收到一条警告:“应用程序启动结束时,应用程序窗口应具有根视图控制器”

确保你有这样的东西:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

// Override point for customization after app launch 

_window.rootViewController = myViewController;

...
}

如果你想得到这方面的建议,你需要发布一些代码谢谢@JSA986,我添加了使用的移动代码。这有用吗?谢谢你,@Benoit,你的回答。但是,我在appDelegate.m中使用以下代码行设置了rootViewController:'self.navController=[[UINavigationController alloc]initWithRootViewController:self.viewController]',我的appDelegate的“didFinishLaunchingWithOptions”在从手机中选择了一张照片并显示屏幕变黑后似乎不会被调用。唯一的线索是,我在选择“选择文件”后收到以下警告:开始/结束外观转换的调用不平衡。@JRoss didFinishLaunchingWithOptions:不应在拾取照片后调用。它在启动时被调用,将window.rootController设置为主视图控制器可防止问题发生。它帮我解决了问题,我也出现了同样的症状。谢谢@Benoit,这似乎奏效了。然而,我需要在第一次打开时创建一个注册页面,这导致我等待将我的主webView页面推到navController的堆栈上。现在,当我尝试设置rootViewController时,出现以下错误:“***由于未捕获的异常“UIViewControllerHierarchyInconsistency”而终止应用程序,原因:'将根视图控制器添加为视图控制器的子视图:“我猜在添加navController子视图后,我无法执行此操作。您将如何处理此错误?@JRoss听起来您将错误的VC分配为window.rootViewController-也许您需要分配navController。另一种方法是使用苹果的图形工具(界面生成器、故事板),因为它们会自动处理这些问题。