gpt4 book ai didi

iOS 8 SDK : modal UIWebView and camera/image picker

转载 作者:IT王子 更新时间:2023-10-29 07:43:22 26 4
gpt4 key购买 nike

我发现,在针对 iOS 8 进行编译(并在 iOS 8 中运行)时,如果 UIWebView 位于以模态方式呈现的 View Controller 。它在直接从窗口 rootViewController “挂起”的 View Controller 或从它推送的 View Controller 中正常工作。

可以在https://dl.dropboxusercontent.com/u/6214425/TestModalWebCamera.zip 找到测试应用程序但我会在下面描述。

我的测试应用程序(使用 Storyboard构建,但实际应用程序不使用它们)有两个 View Controller (未最初命名为 ViewControllerViewController2)。 ViewController 包含在作为 Root View Controller 的 UINavigationController 中。 ViewController 包含一个 UIWebView(工作正常)、一个“显示”(“推送”)的按钮 ViewController2 和一个 UIBarButtonItem 以模态方式呈现 ViewController2ViewController2 有另一个 UIWebView,它在“推送”时有效,但在“呈现”时无效。

ViewControllerViewController2 都加载了:

- (void)viewDidLoad {
[super viewDidLoad];

[self.webView loadHTMLString:@"<input type=\"file\" accept=\"image/*;capture=camera\">" baseURL:nil];
}

当尝试使用模态 UIWebView 时,Xcode 在控制台中打印以下内容并关闭应用模态:

Warning: Attempt to present <UIImagePickerController: 0x150ab800> on <ViewController2: 0x14623580> whose view is not in the window hierarchy!

我目前的理论是 UIActionSheetUIAlertController 的变化可能导致了这种情况,但很难证明。以防万一,我会和 Apple 一起开雷达。

是否有人发现了相同的情况和解决方法?

最佳答案

我发现在 iOS 8.0.2 中 iPad 似乎没有这个错误,但 iPhone 仍然有。

但是,在包含 uiwebview 的 View Controller 中覆盖以下内容

-(void)dismissViewControllerAnimated:(BOOL)flag completion:(void (^)(void))completion

并且检查是否存在 presentedViewController 似乎有效。

但需要检查副作用

#import "UiWebViewVC.h"

@interface UiWebViewVC ()

@property (weak, nonatomic) IBOutlet UIWebView *uiwebview;

@end

@implementation UiWebViewVC

- (void)viewDidLoad
{
[super viewDidLoad];

NSURL *url = [NSURL URLWithString:@"http://html5demos.com/file-api-simple"];

NSURLRequest *request = [NSURLRequest requestWithURL:url];

self.uiwebview.scalesPageToFit = YES;

[self.uiwebview loadRequest:request];
}


-(void)dismissViewControllerAnimated:(BOOL)flag completion:(void (^)(void))completion
{
if ( self.presentedViewController)
{
[super dismissViewControllerAnimated:flag completion:completion];
}
}


@end

关于iOS 8 SDK : modal UIWebView and camera/image picker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25942676/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com