ファーストを使用してWebビューとビューコントローラを作成してください、のはMyWebViewController
それを呼びましょう。
次に、あなたはどちらか、フルスクリーン・コントローラとしてそれを提示することができます
MyWebViewController* alertController = [[MyWebViewController alloc] init];
alertController.view.backgroundColor = [UIColor.lightGrayColor colorWithAlphaComponent:0.2];
alertController.modalPresentationStyle = UIModalPresentationOverFullScreen;
[self presentViewController:alertController animated:YES completion:nil];
これは、しかし、フルスクリーン・コントローラです。コンテンツの中心にビューを作成し、そのビューの境界線を追加し、すべてを半透明に保つ必要があります。
ます。また、ポップオーバーを使用することができます
:
UIView *sourceView = self.view;
MyWebViewController* alertController = [[MyWebViewController alloc] init];
alertController.modalPresentationStyle = UIModalPresentationPopover;
alertController.preferredContentSize = CGRectInset(self.view.bounds, 20, 100).size;
alertController.popoverPresentationController.canOverlapSourceViewRect = YES;
alertController.popoverPresentationController.sourceView = sourceView;
alertController.popoverPresentationController.sourceRect = CGRectMake(CGRectGetMidX(sourceView.bounds), CGRectGetMidY(sourceView.bounds), 0, 0);
alertController.popoverPresentationController.permittedArrowDirections = 0;
alertController.popoverPresentationController.delegate = self;
[self presentViewController:alertController animated:YES completion:nil];
デリゲートも実装する必要があります:
- (UIModalPresentationStyle)adaptivePresentationStyleForPresentationController:(UIPresentationController *)controller traitCollection:(UITraitCollection *)traitCollection {
return UIModalPresentationNone;
}
ソースビューは通常、ポップオーバーを開くボタンですが、私は親ビューを使用していますpopoverが確実に中央に配置されます。
また、UIAlertView
によって自動的に追加されるボタンを追加する必要がありますが、それは簡単なはずです。
カスタムコントローラを作成して提示します。 'UIAlertView'を使用しないでください(あなたは実際にカスタムビューを追加するために' UIAlertView'をハックしています)。 – Sulthan
カスタムビューを使用する –
'UIAlertView'は' UIAlertController'のために推奨されなくなりました。 – Losiowaty