Avec l'annonce d'iOS 12, UIWebView est désormais officiellement obsolète. Depuis iOS 13, Apple a commencé à rejeter les applications qui implémentent UIWebView , ce qui rend cette bibliothèque complètement disparue.
Cette bibliothèque sera laissée en place aux développeurs qui peuvent encore avoir besoin de prendre en charge iOS 7, mais aucune nouvelle fonctionnalité ne sera ajoutée, ni le support ne sera fourni. Restez à l'écoute. Les plans pour une version WKWebView sont en préparation. :D

TOWebViewController est une sous-classe UIViewController open-source conçue pour permettre aux applications de présenter rapidement le contenu de la page Web à ses utilisateurs, sans avoir besoin de les donner des coups de pied à Safari. TOWebViewController a été conçu à partir de zéro pour être facilement intégré dans les projets existants, pour profiter des dernières fonctionnalités d'iOS et être éventuellement compatible avec les versions (significativement) antérieures d'iOS.
UIWebView , en arrière compatible jusqu'à iOS 5. TOWebViewController est assez intelligent pour pouvoir dire quand il est présenté comme une fenêtre contextuelle modale, et quand il est poussé sur un UINavigationController et pour modifier sa disposition de bouton en conséquence.
Lors de la présentation comme une fenêtre contextuelle modale, il est toujours nécessaire de créer un parent UINavigationController pour que les boutons s'affichent correctement:
TOWebViewController *webViewController = [[TOWebViewController alloc ] initWithURL: [ NSURL URLWithString: @" http://www.apple.com/ " ]];
UINavigationController *navigationController = [[UINavigationController alloc ] initWithRootViewController: webViewController];
[ self presentViewController: navigationController animated: YES completion: nil ];UINavigationController TOWebViewController *webViewController = [[TOWebViewController alloc ] initWithURL: [ NSURL URLWithString: @" http://www.apple.com/ " ]];
[ self .navigationController pushViewController: webViewController animated: YES ];iOS 5.0 ou plus
Ajoutez ce qui suit à votre podfile:
pod 'TOWebViewController' Ajoutez ce qui suit à votre carton:
github "https://github.com/TimOliver/TOWebViewController"
Téléchargez ce projet depuis GitHub, déplacez le sous-dossier nommé «TowebViewController» dans votre dossier de projet et faites-le glisser dans votre projet Xcode.
Après cela, vous devrez lier les cadres système suivants à votre projet:
WKWebView ? Cette bibliothèque a été construite à l'origine autour d'iOS 5, dans l'objectif explicite de soutenir autant de versions d'iOS que possible. Bien qu'il y ait eu des expériences pour essayer de déposer WKWebView dans ce contrôleur en option pour les appareils exécutant iOS 8 et plus, son API est si différente de UIWebView qu'il serait très difficile de soutenir correctement le changement entre les deux. En conséquence, la meilleure option serait d'écrire un nouveau contrôleur de vue Web à partir de zéro, conçu autour de WKWebView .
TOWebViewController n'adoptera à aucun moment WKWebView à l'avenir. Si vous souhaitez un contrôleur de vue alternatif qui le fait, veuillez essayer DZNWEBVIEWController!
SFSafariViewController ? À partir d'iOS 9, Apple fournit désormais un contrôleur de vue Web intégré de fonctionnalités similaires nommées SFSafariViewController . Si votre application ne cible que iOS 9 et qu'elle remplit complètement vos besoins, il est absolument recommandé d'adopter SFSafariViewController au lieu de TOWebViewController .
Cela étant dit, si vous ciblez toujours les versions iOS inférieures, ou si vous avez besoin de plus de personnalisation que SFSafariViewController , alors TOWebViewController peut toujours servir d'alternative viable.
TOWebViewController a été créé à l'origine par Tim Oliver en tant que composant pour IComics, une application de lecture comique pour iOS.
Merci également à la liste croissante des contributeurs de TOWebViewController !
iPad Pro et iPhone X Mockups de périphérique par PixeDen. iPod Touch Mockup par Tim Oliver.
TowebViewController est concédé sous licence MIT. Pour plus d'informations, veuillez consulter le fichier de licence.