Pakket | flash.media |
Klasse | public final class StageWebView |
Overerving | StageWebView EventDispatcher Object |
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Met de StageWebView-klasse kunt u op een eenvoudige manier HTML-inhoud weergeven op apparaten die geen ondersteuning bieden voor de HTMLLoader-klasse. De klasse biedt geen interactie tussen ActionScript en de HTML-inhoud, behalve via de methoden en eigenschappen van de StageWebView-klasse zelf. U kunt bijvoorbeeld geen waarden doorgeven of functies aanroepen tussen ActionScript en JavaScript.
AIR-profielondersteuning: deze functie wordt ondersteund op alle desktopbesturingssystemen en mobiele apparaten, maar niet op AIR for TV-apparaten. Met de eigenschap StageWebView.isSupported
kunt u testen of deze functie tijdens runtime wordt ondersteund. Zie AIR-profielondersteuning voor meer informatie over API-ondersteuning voor meerdere profielen.
Bij apparaten met de profielen Mobile en Extended mobile wordt het systeemwebbesturingselement van het apparaatbesturingssysteem gebruikt door de StageWebView-klasse. Daarom kunnen de beschikbare functies en rendering per apparaat verschillen.
Op Android wordt HTML5-video alleen ondersteund als <application android:hardwareAccelerated="true"/>
is opgenomen in de toepassingsdescriptor.
Op bureaubladcomputers (profielen Desktop en Uitgebreide desktop) gebruikt de StageWebView-klasse het webbesturingselement van het systeem dat is opgegeven door de Flash Player-insteekmodule. De beschikbare functies en rendering zijn hetzelfde als bij de HTMLLoader-klasse (zonder de nauwe integratie en script bridging tussen ActionScript en JavaScript die door een HTMLLoader-instance wordt geboden). Aangezien de HTMLLoader-klasse de interne WebKit AIR-engine gebruikt, wordt het gelijktijdige gebruik van StageWebView en HTMLLoader sterk afgeraden omdat dit een niet-gedefinieerd gedrag vertoont en de toepassing mogelijk beëindigt.
De StageWebView-klasse is GEEN weergaveobject en kan niet worden toegevoegd aan de Flash-weergavelijst. In plaats hiervan kunt u een StageWebView-object weergeven door het object rechtstreeks via de eigenschap stage
te koppelen aan een werkgebied. De StageWebView-instantie die aan een werkgebied is gekoppeld, wordt boven op andere Flash-weergaveobjecten weergegeven. Met de eigenschap viewPort
bepaalt u de grootte en de positie van het renderinggebied. De dieptevolgorde van de verschillende StageWebView-objecten kan niet worden ingesteld. Het wordt niet aanbevolen om twee instanties te laten overlappen.
Wanneer de inhoud in het StageWebView-object de focus heeft, beschikt het StageWebView-object over het recht om als eerste de toetsenbordinvoer te verwerken. De eventuele toetsenbordinvoer die niet is verwerkt, wordt verzonden door het werkgebied waaraan het StageWebView-object is gekoppeld. De normale opname-/terugkoppelcyclus voor gebeurtenissen is hier niet van toepassing, aangezien de StageWebView-instantie geen onderdeel vormt van de weergavelijst.
In Android 3.0+ moet een toepassing de hardwareversnelling inschakelen in het Android manifestAdditions-element van het beschrijvingsbestand van de AIR-toepassing om de inhoud van de insteekmodule weer te geven in een StageWebView-object.
Meer informatie
Verwante API-elementen
Eigenschap | Gedefinieerd door | ||
---|---|---|---|
constructor : Object
Verwijzing naar het klasseobject of de constructorfunctie van een bepaalde objectinstantie. | Object | ||
isHistoryBackEnabled : Boolean [alleen-lezen]
Meldt of er een vorige pagina is in de browsergeschiedenis. | StageWebView | ||
isHistoryForwardEnabled : Boolean [alleen-lezen]
Meldt of er een volgende pagina is in de browsergeschiedenis. | StageWebView | ||
isSupported : Boolean [statisch] [alleen-lezen]
Meldt of de StageWebView-klasse wordt ondersteund op het huidige apparaat. | StageWebView | ||
location : String [alleen-lezen]
De URL van de huidige locatie. | StageWebView | ||
mediaPlaybackRequiresUserAction : Boolean
Bepaal of de gebruiker bewegingen moet uitvoeren om media-inhoud te kunnen afspelen. | StageWebView | ||
stage : Stage
Het werkgebied waarin dit StageWebView-object wordt weergegeven. | StageWebView | ||
title : String [alleen-lezen]
De waarde van de HTML-titel. | StageWebView | ||
viewPort : Rectangle
Het gedeelte van het werkgebied waarin het StageWebView-object wordt weergegeven. | StageWebView |
Methode | Gedefinieerd door | ||
---|---|---|---|
Maakt een StageWebView-object. | StageWebView | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registreert een gebeurtenislistenerobject bij een object EventDispatcher, zodat de listener een melding van een gebeurtenis ontvangt. | EventDispatcher | ||
Plaatst de focus op de inhoud in dit StageWebView-object. | StageWebView | ||
Verzendt een gebeurtenis naar de gebeurtenisstroom. | EventDispatcher | ||
Verwijdert dit StageWebView-object. | StageWebView | ||
Hiermee wordt de StageWebView-weergavepoort als een bitmap getekend. | StageWebView | ||
Controleert of het object EventDispatcher listeners heeft geregistreerd voor een specifiek type gebeurtenis. | EventDispatcher | ||
Geeft aan of voor een object een opgegeven eigenschap is gedefinieerd. | Object | ||
Navigeert naar de vorige pagina in de browsergeschiedenis. | StageWebView | ||
Navigeert naar de volgende pagina in de browsergeschiedenis. | StageWebView | ||
Geeft aan of een instantie van de klasse Object zich in de prototypeketen van het object bevindt dat als parameter is opgegeven. | Object | ||
Hiermee wordt de opgegeven HTML-tekenreeks geladen en weergegeven. | StageWebView | ||
Laadt de pagina bij de opgegeven URL. | StageWebView | ||
Geeft aan of de opgegeven eigenschap bestaat en kan worden opgesomd. | Object | ||
Laadt de huidige pagina opnieuw. | StageWebView | ||
Verwijdert een listener uit het object EventDispatcher. | EventDispatcher | ||
Stelt de beschikbaarheid van een dynamische eigenschap voor lusbewerkingen in. | Object | ||
Stopt de huidige laadbewerking. | StageWebView | ||
Geeft de tekenreeksweergave van dit object weer, geformatteerd volgens de locatiespecifieke conventies. | Object | ||
Retourneert een tekenreeksrepresentatie van het opgegeven object. | Object | ||
Retourneert de primitieve waarde van het opgegeven object. | Object | ||
Controleert of een gebeurtenislistener is geregistreerd bij dit object EventDispatcher of een van de voorouders voor het opgegeven type gebeurtenis. | EventDispatcher |
Gebeurtenis | Overzicht | Gedefinieerd door | ||
---|---|---|---|---|
[uitgezonden gebeurtenis] Wordt verzonden wanneer Flash Player of de AIR-toepassing de besturingssysteemfocus krijgt en actief wordt. | EventDispatcher | |||
Geeft aan dat de laatste laadbewerking die is aangevraagd door de methode loadString() of loadURL() is voltooid. | StageWebView | |||
[uitgezonden gebeurtenis] Wordt verzonden wanneer Flash Player of de AIR-toepassing de systeemfocus verliest en inactief wordt. | EventDispatcher | |||
Geeft aan dat er een fout is opgetreden. | StageWebView | |||
Verzonden wanneer dit StageWebView-object de focus krijgt. | StageWebView | |||
Verzonden wanneer StageWebView geen focus meer heeft. | StageWebView | |||
Geeft aan dat de eigenschap location van het StageWebView-object is gewijzigd. | StageWebView | |||
Geeft aan dat de eigenschap location van het StageWebView-object wordt gewijzigd. | StageWebView |
isHistoryBackEnabled | eigenschap |
isHistoryForwardEnabled | eigenschap |
isSupported | eigenschap |
location | eigenschap |
mediaPlaybackRequiresUserAction | eigenschap |
mediaPlaybackRequiresUserAction:Boolean
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 21.0 |
Bepaal of de gebruiker bewegingen moet uitvoeren om media-inhoud te kunnen afspelen. Bij iOS wordt deze eigenschap niet ondersteund en kan de functie autoPlay voor media alleen worden bereikt met de constructorStageWebView()
. De standaardwaarde is True.
Implementatie
public function get mediaPlaybackRequiresUserAction():Boolean
public function set mediaPlaybackRequiresUserAction(value:Boolean):void
stage | eigenschap |
title | eigenschap |
viewPort | eigenschap |
viewPort:Rectangle
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Het gedeelte van het werkgebied waarin het StageWebView-object wordt weergegeven.
Implementatie
public function get viewPort():Rectangle
public function set viewPort(value:Rectangle):void
Gegenereerde uitzondering
RangeError — De Rectangle-waarde is ongeldig.
|
StageWebView | () | Constructor |
public function StageWebView(useNative:Boolean = false, mediaPlaybackRequiresUserAction:Boolean = true)
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Maakt een StageWebView-object.
Het object wordt pas zichtbaar wanneer het aan een werkgebied is gekoppeld en nadat viewPort
is ingesteld.
Opmerking: hoewel het niet verboden is, kunnen er met bepaalde inhoud fouten ontstaan als hetzelfde proces zowel gebruik maakt van de ingesloten WebKit als van de WebKit van het systeem. Daarom wordt het aanbevolen dat alle StageWebViews in een bepaalde toepassing met dezelfde waarde voor useNative worden samengesteld. Aangezien HTMLLoader afhankelijk is van de ingesloten WebKit, dienen toepassingen die HTMLLoader gebruiken bovendien alleen StageWebViews samen te stellen als useNative is ingesteld op false.
ParametersuseNative:Boolean (default = false ) — Als useNative false is, wordt een in AIR ingesloten versie van WebKit gebruikt als de bron van de gemaakte StageWebView. Als useNative true is, wordt de standaardwebengine van het systeem gebruikt. Mobiele platforms ondersteunen alleen de webengine van het systeem en dus wordt useNative genegeerd op mobiele platforms.
| |
mediaPlaybackRequiresUserAction:Boolean (default = true ) — Wordt standaard ingesteld op true. Wanneer mediaPlaybackRequiresUserAction is ingesteld op true, vereist WebView een handeling van de gebruiker om af te spelen. Als de waarde is ingesteld op false, wordt de inhoud automatisch afgespeeld.
|
assignFocus | () | methode |
public function assignFocus(direction:String = "none"):void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Plaatst de focus op de inhoud in dit StageWebView-object.
De richtingswaarden zijn gedefinieerd in de FocusDirection-klasse en omvatten: 'onder', 'geen' en 'boven'.
Parameters
direction:String (default = "none ") — geeft aan of de focus wordt geplaatst op het eerste of laatste object in de weergegeven inhoud.
|
Verwante API-elementen
dispose | () | methode |
public function dispose():void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Verwijdert dit StageWebView-object.
Het aanroepen van dispose()
is optioneel. Als u geen referentie naar deze StageWebView-instantie bijhoudt, is het mogelijk dat dit item wordt opgeschoond. Door dispose()
aan te roepen kunt u eerder (of op een geschikter tijdstip) opschonen.
drawViewPortToBitmapData | () | methode |
public function drawViewPortToBitmapData(bitmap:BitmapData):void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.6 |
Hiermee wordt de StageWebView-weergavepoort als een bitmap getekend.
Maak de bitmap door deze vast te leggen en stel het werkgebied in op null
als u de inhoud boven het StageWebView-object wilt weergeven.
Opmerking: het juiste gedrag van deze methode wordt niet gegarandeerd bij pagina's met inhoud van insteekmodules, zoals ingesloten PDF- en SWF-bestanden.
Parameters
bitmap:BitmapData — Het BitmapData-object waarop het zichtbare gedeelte van de StageWebView-weergavepoort wordt getekend.
|
Gegenereerde uitzondering
ArgumentError — De breedte of hoogte van de bitmap is anders dan de breedte of hoogte van de weergavepoort.
| |
Error — De waarde voor de bitmap is null.
|
Voorbeeld ( Hoe dit voorbeeld te gebruiken )
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 | () | methode |
public function historyBack():void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Navigeert naar de vorige pagina in de browsergeschiedenis.
historyForward | () | methode |
public function historyForward():void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Navigeert naar de volgende pagina in de browsergeschiedenis.
loadString | () | methode |
public function loadString(text:String, mimeType:String = "text/html"):void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Hiermee wordt de opgegeven HTML-tekenreeks geladen en weergegeven.
Wanneer u de methode loadString()
gebruikt, wordt de waarde van location
gerapporteerd als "about:blank." Bij URL's in de HTML-tekenreeks kunnen alleen standaard URI-schema's worden gebruikt. De URI-schema's van AIR ("app:" en "app-storage:") zijn niet toegestaan.
De HTML-inhoud kan geen lokale bronnen laden, zoals afbeeldingbestanden. XMLHttpRequests zijn niet toegestaan.
Alleen de MIME-typen "text/html" en "application/xhtml+xml" worden ondersteund.
Parameters
text:String — de tekenreeks met HTML- of XHTML-inhoud die moet worden weergegeven.
| |
mimeType:String (default = "text/html ") — Het MIME-type van de inhoud, ofwel "text/html" of "application/xhtml+xml".
|
Voorbeeld ( Hoe dit voorbeeld te gebruiken )
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 | () | methode |
public function loadURL(url:String):void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Laadt de pagina bij de opgegeven URL.
De URL kan gebruikmaken van de volgende URI-schema's: http:, https:, file:, data: en javascript:. Inhoud die is geladen met het schema file: kan andere lokale bronnen laden.
Parameters
url:String |
Voorbeeld ( Hoe dit voorbeeld te gebruiken )
loadURL()
.
Opmerking: op Android-systemen moet u het recht INTERNET opgeven in het beschrijvingsbestand van uw AIR-toepassing om externe URL's te laden.
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 | () | methode |
public function reload():void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Laadt de huidige pagina opnieuw.
stop | () | methode |
public function stop():void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Stopt de huidige laadbewerking.
complete | Gebeurtenis |
flash.events.Event
eigenschap Event.type =
flash.events.Event.COMPLETE
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Geeft aan dat de laatste laadbewerking die is aangevraagd door de methode loadString()
of loadURL()
is voltooid.
Event.COMPLETE
definieert de waarde van de eigenschap type
van een complete
-gebeurtenisobject.
Deze gebeurtenis heeft de volgende eigenschappen:
Eigenschap | Waarde |
---|---|
bubbles | false |
cancelable | false ; er is geen standaardgedrag om te annuleren. |
currentTarget | Het object dat het gebeurtenisobject actief verwerkt met een gebeurtenislistener. |
target | Het netwerkobject dat klaar is met laden. |
error | Gebeurtenis |
flash.events.ErrorEvent
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Geeft aan dat er een fout is opgetreden.
focusIn | Gebeurtenis |
flash.events.FocusEvent
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Verzonden wanneer dit StageWebView-object de focus krijgt.
focusOut | Gebeurtenis |
flash.events.FocusEvent
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Verzonden wanneer StageWebView geen focus meer heeft.
locationChange | Gebeurtenis |
flash.events.LocationChangeEvent
eigenschap LocationChangeEvent.type =
flash.events.LocationChangeEvent.LOCATION_CHANGE
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Geeft aan dat de eigenschap location
van het StageWebView-object is gewijzigd.
De gebeurtenis kan niet worden geannuleerd.
Verzonden na elke wijziging in de locatie. locationChanging | Gebeurtenis |
flash.events.LocationChangeEvent
eigenschap LocationChangeEvent.type =
flash.events.LocationChangeEvent.LOCATION_CHANGING
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2.5 |
Geeft aan dat de eigenschap location
van het StageWebView-object wordt gewijzigd.
Een locationChanging-gebeurtenis wordt alleen verzonden wanneer de wijziging van de locatie wordt geïnitieerd via de HTML-inhoud of via de code die in het StageWebView-object wordt uitgevoerd, bijvoorbeeld wanneer een gebruiker op een koppeling klikt. De nieuwe locatie wordt standaard weergegeven in dit StageWebView-object. Als u het standaardgedrag wilt annuleren, kunt u de methode preventDefault()
van het gebeurtenisobject aanroepen. Zo kunt u bijvoorbeeld de functie flash.net.navigateToURL()
gebruiken om de pagina in de systeembrowser te openen op basis van de eigenschap location
van het gebeurtenisobject
Er wordt geen locationChanging-gebeurtenis verzonden wanneer u de locatie wijzigt met een van de volgende methoden.
historyBack()
historyForward()
loadString()
loadURL()
reload()
LOCATION_CHANGING
definieert de waarde van de eigenschap type
van het LocationChangeEvent-object dat is verzonden voordat de paginalocatie is gewijzigd.
loadURL()
, waarna met de softwaretoetsen Terug en Zoeken van het apparaat door de geschiedenis wordt genavigeerd.
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(); } } } }
Wed Jun 13 2018, 11:42 AM Z