Package | flash.media |
Classe | public final class StageWebView |
Héritage | StageWebView EventDispatcher Object |
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
La classe StageWebView fournit un moyen simple pour afficher du contenu HTML sur les périphériques qui ne prennent pas en charge la classe HTMLLoader. Cette classe ne fournit aucune interaction entre ActionScript et le contenu HTML, sauf à travers les méthodes et les propriétés de la classe StageWebView elle-même. Par exemple, il n’existe aucun moyen de transmettre des valeurs ou d’appeler des fonctions entre ActionScript et JavaScript.
Prise en charge du profil AIR : cette fonctionnalité est prise en charge sur tous les systèmes d’exploitation de bureau et sur tous les périphériques mobiles, mais ne l’est pas sur les périphériques AIR pour TV. Vous pouvez tester la prise en charge lors de l’exécution à l’aide de la propriété StageWebView.isSupported
. Voir Prise en charge du profil AIR pour plus d’informations sur la prise en charge de l’API dans plusieurs profils.
Sur les périphériques des profils mobiles et des profils mobiles étendus, la classe StageWebView utilise le contrôle du système Web proposé par le système d’exploitation du périphérique. Par conséquent, les fonctionnalités disponibles et l’aspect du rendu peuvent varier d’un périphérique à l’autre.
Sur Android, la vidéo HTML5 incorporée est uniquement prise en charge si <application android:hardwareAccelerated="true"/>
est inclus dans le descripteur de l’application.
Sur les ordinateurs de bureau (profil de bureau et profil étendu de bureau), la classe StageWebView utilise le système de commandes Web fourni par le module externe Flash Player. Les fonctionnalités disponibles et l’aspect du rendu sont les mêmes que ceux de la classe HTMLLoader (sans l’intégration étroite et la correspondance de scripts entre ActionScript et JavaScript fournis par une occurrence de HTMLLoader). Etant donné que la classe HTMLLoader utilise le moteur interne Webkit d’AIR, l’utilisation simultanée d’occurrences de StageWebView et d’HTMLLoader est fortement déconseillée, car elle entraîne un comportement inattendu qui peut éventuellement arrêter l’application.
La classe StageWebView n’est PAS un objet d’affichage et ne peut pas être ajoutée à la liste d’affichage de Flash. Par contre, vous pouvez afficher un objet StageWebView en l’associant directement à une scène à l’aide de la propriété stage
. L’occurrence de StageWebView associée à une scène s’affiche au-dessus de n’importe quel objet d’affichage Flash. Vous pouvez contrôler la taille et la position de la zone de rendu avec la propriété viewPort
. Il n’existe aucun moyen de contrôler l’ordre de profondeur des différents objets StageWebView. Le chevauchement de deux instances n’est pas recommandé.
Dès que le contenu à l’intérieur de l’objet StageWebView a le focus, l’objet StageWebView a la première occasion de gérer la saisie au clavier. La scène à laquelle l’objet StageWebView est associé distribue toute saisie au clavier qui n’est pas gérée. La capture et la propagation standard d’événements ne s’appliquent pas ici, car l’occurrence de StageWebView ne fait pas partie de la liste d’affichage.
Dans Android 3.0+, l’application doit activer l’accélération matérielle dans l’élément manifestAdditions Android du descripteur d’application AIR pour afficher le contenu des modules d’extension dans un objet StageWebView.
Plus d’exemples
Informations complémentaires
Eléments de l’API associés
Propriété | Défini par | ||
---|---|---|---|
constructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet. | Object | ||
isHistoryBackEnabled : Boolean [lecture seule]
Indique s’il existe une page précédente dans l’historique de navigation. | StageWebView | ||
isHistoryForwardEnabled : Boolean [lecture seule]
Indique s’il existe une page suivante dans l’historique de navigation. | StageWebView | ||
isSupported : Boolean [statique] [lecture seule]
Indique si la classe StageWebView est prise en charge sur le périphérique actuel. | StageWebView | ||
location : String [lecture seule]
URL de l’emplacement actuel. | StageWebView | ||
mediaPlaybackRequiresUserAction : Boolean
Définie si l’utilisateur doit effectuer un mouvement pour lire le contenu multimédia. | StageWebView | ||
stage : Stage
Scène sur laquelle cet objet StageWebView est affiché. | StageWebView | ||
title : String [lecture seule]
Valeur du titre HTML. | StageWebView | ||
viewPort : Rectangle
Zone sur la scène sur laquelle l’objet StageWebView est affiché. | StageWebView |
Méthode | Défini par | ||
---|---|---|---|
Crée un objet StageWebView. | StageWebView | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement. | EventDispatcher | ||
Donne le focus au contenu dans cet objet StageWebView. | StageWebView | ||
Distribue un événement dans le flux d’événements. | EventDispatcher | ||
Supprime cet objet StageWebView. | StageWebView | ||
Crée la fenêtre d’affichage de l’objet StageWebView sur un bitmap. | StageWebView | ||
Vérifie si des écouteurs sont enregistrés auprès de l’objet EventDispatcher pour un type spécifique d’événement. | EventDispatcher | ||
Indique si la propriété spécifiée d’un objet est définie. | Object | ||
Revient à la page précédente dans l’historique de navigation. | StageWebView | ||
Passe à la page suivante dans l’historique de navigation. | StageWebView | ||
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre. | Object | ||
Charge et affiche la chaîne HTML spécifiée. | StageWebView | ||
Charge la page à l’adresse URL spécifiée. | StageWebView | ||
Indique si la propriété spécifiée existe et est énumérable. | Object | ||
Recharge la page en cours. | StageWebView | ||
Supprime un écouteur de l’objet EventDispatcher. | EventDispatcher | ||
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle. | Object | ||
Interrompt l’opération de chargement en cours. | StageWebView | ||
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur. | Object | ||
Renvoie la représentation sous forme de chaîne de l’objet spécifié. | Object | ||
Renvoie la valeur primitive de l’objet spécifié. | Object | ||
Vérifie si un écouteur d’événement est enregistré auprès de cet objet EventDispatcher ou de ses ancêtres pour le type d’événement spécifié. | EventDispatcher |
Evénement | Synthèse | Défini par | ||
---|---|---|---|---|
[Evénement de diffusion] Distribué lorsque l’application Flash Player obtient le focus du système d’exploitation et devient active. | EventDispatcher | |||
Indique que la dernière opération de chargement sollicitée par la méthode loadString() ou loadURL() est terminée. | StageWebView | |||
[Evénement de diffusion] Distribué lorsque l’application Flash Player ou AIR perd le focus du système d’exploitation et devient inactive. | EventDispatcher | |||
Indique qu’une erreur est survenue. | StageWebView | |||
Distribué lorsque cet objet StageWebView reçoit le focus. | StageWebView | |||
Distribué lorsque StageWebView abandonne le focus. | StageWebView | |||
Indique que la propriété location de l’objet StageWebView a été modifiée. | StageWebView | |||
Indique que la propriété location de l’objet StageWebView est sur le point d’être modifiée. | StageWebView |
isHistoryBackEnabled | propriété |
isHistoryForwardEnabled | propriété |
isSupported | propriété |
location | propriété |
mediaPlaybackRequiresUserAction | propriété |
mediaPlaybackRequiresUserAction:Boolean
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 21.0 |
Définie si l’utilisateur doit effectuer un mouvement pour lire le contenu multimédia. Pour iOS, cette propriété n’est pas respectée, et la lecture automatique des médias ne peut être obtenue que par le biais du constructeur StageWebView()
. La valeur par défaut est True.
Implémentation
public function get mediaPlaybackRequiresUserAction():Boolean
public function set mediaPlaybackRequiresUserAction(value:Boolean):void
stage | propriété |
title | propriété |
viewPort | propriété |
viewPort:Rectangle
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Zone sur la scène sur laquelle l’objet StageWebView est affiché.
Implémentation
public function get viewPort():Rectangle
public function set viewPort(value:Rectangle):void
Valeur émise
RangeError — La valeur Rectangle n’est pas valide.
|
StageWebView | () | Constructeur |
public function StageWebView(useNative:Boolean = false, mediaPlaybackRequiresUserAction:Boolean = true)
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Crée un objet StageWebView.
L’objet est invisible tant qu’il n’est pas associé à une scène et tant que la propriété viewPort
n’est pas définie.
Remarque : même si cela n’est pas interdit, des erreurs peuvent se produire avec certains contenus lorsque le même processus utilise le webkit intégré et le webkit système. Il est donc recommandé de créer tous les objets StageWebViews d’une application donnée avec la même propriété useNative. De plus, comme la classe HTMLLoader dépend du webkit intégré, les applications utilisant cette classe doivent créer uniquement des objets StageWebViews avec une propriété useNative définie sur false.
ParamètresuseNative:Boolean (default = false ) — Si la propriété useNative est définie sur false, une version du webkit intégré à AIR est utilisée en tant que source de l’objet StageWebView créé. Si la propriété useNative est définie sur true, AIR utilise le moteur Web par défaut du système. Les plateformes mobiles prennent en charge uniquement le moteur Web. useNative est donc ignorée.
| |
mediaPlaybackRequiresUserAction:Boolean (default = true ) — Par défaut, cette valeur est définie sur true. Lorsque la valeur de mediaPlaybackRequiresUserAction est true, WebView requiert une action de l’utilisateur pour la lecture. Si sa valeur est false, le contenu WebView est lu automatiquement.
|
assignFocus | () | méthode |
public function assignFocus(direction:String = "none"):void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Donne le focus au contenu dans cet objet StageWebView.
Les valeurs de direction sont définies dans la classe FocusDirection et comprennent : "bottom", "none" et "top".
Paramètres
direction:String (default = "none ") — Indique si le premier ou le dernier objet pouvant recevoir le focus dans le contenu affiché doit recevoir le focus.
|
Eléments de l’API associés
dispose | () | méthode |
public function dispose():void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Supprime cet objet StageWebView.
L’appel de la méthode dispose()
est facultatif. Si vous n’avez pas conservé de référence à cette occurrence de StageWebView, elle peut faire l’objet d’une récupération de place. L’appel de la méthode dispose()
peut accélérer la récupération de place ou la faire intervenir à un moment plus opportun.
drawViewPortToBitmapData | () | méthode |
public function drawViewPortToBitmapData(bitmap:BitmapData):void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.6 |
Crée la fenêtre d’affichage de l’objet StageWebView sur un bitmap.
Capturez l’image bitmap et définissez la scène sur null
pour afficher le contenu au-dessus de l’objet StageWebView.
Remarque : le comportement de cette méthode n’est pas garanti pour les pages renfermant le contenu d’un module d’extension (notamment les fichiers PDF et SWF intégrés).
Paramètres
bitmap:BitmapData — Objet BitmapData sur lequel créer la partie visible de la fenêtre d’affichage de l’objet StageWebView.
|
Valeur émise
ArgumentError — La largeur ou la hauteur de l’image bitmap est différente de celle de la fenêtre d’affichage.
| |
Error — Le paramètre bitmap est défini sur null.
|
Exemple ( Comment utiliser cet exemple )
package { import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.Sprite; import flash.events.*; import flash.geom.Rectangle; import flash.media.StageWebView; import flash.net.*; import flash.text.TextField; public class stagewebview1 extends Sprite { public var webView:StageWebView = new StageWebView(); public var textGoogle:TextField=new TextField(); public var textFacebook:TextField=new TextField(); public function stagewebview() { textGoogle.htmlText="<b>Google</b>"; textGoogle.x=300; textGoogle.y=-80; addChild(textGoogle); textFacebook.htmlText="<b>Facebook</b>"; textFacebook.x=0; textFacebook.y=-80; addChild(textFacebook); textGoogle.addEventListener(MouseEvent.CLICK,goGoogle); textFacebook.addEventListener(MouseEvent.CLICK,goFaceBook); webView.stage = this.stage; webView.viewPort = new Rectangle(0, 0, stage.stageWidth, stage.stageHeight); } public function goGoogle(e:Event):void { webView.loadURL("http://www.google.com"); webView.stage = null; webView.addEventListener(Event.COMPLETE,handleLoad); } public function goFaceBook(e:Event):void { webView.loadURL("http://www.facebook.com"); webView.stage = null; webView.addEventListener(Event.COMPLETE,handleLoad); } public function handleLoad(e:Event):void { var bitmapData:BitmapData = new BitmapData(webView.viewPort.width, webView.viewPort.height); webView.drawViewPortToBitmapData(bitmapData); var webViewBitmap:Bitmap=new Bitmap(bitmapData); addChild(webViewBitmap); } } }
historyBack | () | méthode |
public function historyBack():void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Revient à la page précédente dans l’historique de navigation.
historyForward | () | méthode |
public function historyForward():void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Passe à la page suivante dans l’historique de navigation.
loadString | () | méthode |
public function loadString(text:String, mimeType:String = "text/html"):void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Charge et affiche la chaîne HTML spécifiée.
Lors de l’utilisation de la méthode loadString()
, la propriété position
est signalée comme "about:blank". Seuls les modèles d’URI standard peuvent être utilisés dans les URL de la chaîne HTML. Les modèles d’URI d’AIR, à savoir "app:" et "app-storage:", ne sont pas autorisés.
Le contenu HTML ne peut pas charger des ressources locales, telles que des fichiers image. Les requêtes HTTP XML ne sont pas autorisées.
Seuls les types MIME "text/html" et "application/xhtml+xml" sont pris en charge.
Paramètres
text:String — Chaîne de contenu HTML ou XHTML à afficher.
| |
mimeType:String (default = "text/html ") — Type MIME du contenu, soit "text/html" soit "application/xhtml+xml".
|
Exemple ( Comment utiliser cet exemple )
loadString()
.
var webView:StageWebView = new StageWebView(); webView.stage = this.stage; webView.viewPort = new Rectangle( 0, 0, stage.stageWidth, stage.stageHeight ); var htmlString:String = "<!DOCTYPE HTML>" + "<html>" + "<body>" + "<h1>Example</h1>" + "<p>King Phillip cut open five green snakes.</p>" + "</body>" + "</html>"; webView.loadString( htmlString, "text/html" );
loadURL | () | méthode |
public function loadURL(url:String):void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Charge la page à l’adresse URL spécifiée.
L’URL peut utiliser les modèles d’URI suivants : http:, https:, file:, data: et javascript:. Contenu chargé avec le fichier : le modèle peut charger d’autres ressources locales.
Paramètres
url:String |
Exemple ( Comment utiliser cet exemple )
loadURL()
.
Remarque : sur Android, vous devez spécifier une autorisation INTERNET dans votre fichier descripteur d’application AIR pour charger URL distantes.
var webView:StageWebView = new StageWebView(); webView.stage = this.stage; webView.viewPort = new Rectangle( 0, 0, stage.stageWidth, stage.stageHeight ); webView.loadURL( "http://www.example.com" );
reload | () | méthode |
public function reload():void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Recharge la page en cours.
stop | () | méthode |
public function stop():void
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Interrompt l’opération de chargement en cours.
complete | Evénement |
flash.events.Event
propriété Event.type =
flash.events.Event.COMPLETE
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Indique que la dernière opération de chargement sollicitée par la méthode loadString()
ou load()
est terminée.
Event.COMPLETE
définit la valeur de la propriété type
d’un objet événement complete
.
Les propriétés de cet événement sont les suivantes :
Propriété | Valeur |
---|---|
bubbles | false |
cancelable | false ; il n’existe aucun comportement par défaut à annuler. |
currentTarget | L’objet qui traite activement l’objet Event avec un écouteur d’événements. |
target | Objet réseau dont le chargement est terminé. |
error | Evénement |
flash.events.ErrorEvent
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Indique qu’une erreur est survenue.
focusIn | Evénement |
flash.events.FocusEvent
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Distribué lorsque cet objet StageWebView reçoit le focus.
focusOut | Evénement |
flash.events.FocusEvent
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Distribué lorsque StageWebView abandonne le focus.
locationChange | Evénement |
flash.events.LocationChangeEvent
propriété LocationChangeEvent.type =
flash.events.LocationChangeEvent.LOCATION_CHANGE
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Signale que la propriété location
de l’objet StageWebView a été modifiée.
Il est impossible d’annuler cet événement.
Distribué après chaque modification d’emplacement. locationChanging | Evénement |
flash.events.LocationChangeEvent
propriété LocationChangeEvent.type =
flash.events.LocationChangeEvent.LOCATION_CHANGING
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 2.5 |
Indique que la propriété location
de l’objet StageWebView est sur le point d’être modifiée.
Un événement locationChanging est distribué uniquement lorsque le changement d’emplacement est initié via le contenu HTML ou le code qui s’exécute à l’intérieur de l’objet StageWebView, notamment lorsqu’un utilisateur clique sur un lien. Par défaut, le nouvel emplacement est affiché dans cet objet StageWebView. Vous pouvez appeler la méthode preventDefault()
de l’objet d’événement pour annuler le comportement par défaut. Par exemple, vous pouvez utiliser la fonction flash.net.navigateToURL()
pour ouvrir la page dans le navigateur système en fonction de la propriété location
de l’objet d’événement.
Aucun événement locationChanging n’est distribué lorsque vous modifiez l’emplacement à l’aide des méthodes suivantes :
historyBack()
historyForward()
loadString()
loadURL()
reload()
LOCATION_CHANGING
définit la valeur de la propriété type
de l’objet LocationChangeEvent distribué avant un changement de position de page.
loadURL()
, et utilise les touches Retour et Recherche du périphérique pour naviguer dans l’historique.
package { import flash.display.MovieClip; import flash.media.StageWebView; import flash.geom.Rectangle; import flash.events.KeyboardEvent; import flash.ui.Keyboard; import flash.desktop.NativeApplication; public class StageWebViewExample extends MovieClip{ private var webView:StageWebView = new StageWebView(); public function StageWebViewExample() { webView.stage = this.stage; webView.viewPort = new Rectangle( 0, 0, stage.stageWidth, stage.stageHeight ); webView.loadURL( "http://www.example.com" ); stage.addEventListener( KeyboardEvent.KEY_DOWN, onKey ); } private function onKey( event:KeyboardEvent ):void { if( event.keyCode == Keyboard.BACK && webView.isHistoryBackEnabled ) { trace("Back."); webView.historyBack(); event.preventDefault(); } if( event.keyCode == Keyboard.SEARCH && webView.isHistoryForwardEnabled ) { trace("Forward."); webView.historyForward(); } } } }
Tue Jun 12 2018, 09:30 AM Z