Pacote | flash.media |
Classe | public final class StageWebView |
Herança | StageWebView EventDispatcher Object |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
A classe StageWebView fornece um meio simples de exibir o conteúdo HTML em dispositivos onde não há suporte para a classe HTMLLoader. A classe não fornece nenhuma interação entre o ActionScript e o conteúdo HTML, exceto pelos métodos e propriedades da própria classe StageWebView. Não há, por exemplo, nenhum modo de passar valores ou chamar funções entre ActionScript e JavaScript.
Suporte a perfil do AIR: este recurso conta com o suporte de todos os dispositivos móveis e sistemas operacionais para desktop, mas não é compatível com dispositivos AIR for TV. Você pode testar o suporte em tempo de execução usando a propriedadeStageWebView.isSupported
. Consulte Suporte a perfil do AIR para obter mais informações sobre o suporte de API através de múltiplos perfis.
Em dispositivos nos perfis móvel e móvel estendido, a classe StageWebView usa o controle na Web do sistema fornecido pelo sistema operacional do dispositivo. Assim, os recursos disponíveis e a aparência da renderização podem variar de acordo com o dispositivo.
No Android, o vídeo HTML5 em linha é suportado somente se <application android:hardwareAccelerated="true"/>
estiver incluído no descritor do aplicativo.
Em computadores desktop (nos perfis de desktop e desktop estendidos), a classe StageWebView usa o controle da Web do sistema fornecido pelo plug-in do Flash Player. Os recursos disponíveis e a aparência da renderização são os mesmos da classe HTMLLoader (sem a integração e a ponte de script entre o ActionScript e o JavaScript proporcionadas por uma instância de HTMLLoader). Como a classe HTMLLoader usa o mecanismo interno WebKit do AIR, não encorajamos o uso simultâneo de instâncias StageWebView e HTMLLoader já que têm comportamento indefinido e possivelmente podem encerrar o aplicativo.
A classe StageWebView NÃO é um objeto de exibição e não pode ser adicionada à lista de exibição em Flash. Em vez disso, você exibe um objeto StageWebView anexando-o diretamente a um palco usando a propriedade stage
. A instância de StageWebView anexada a um palco é exibida por cima de qualquer objeto de exibição em Flash. Você controla o tamanho e a posição da área de renderização com a propriedade viewPort
. Não há nenhum modo de controlar a ordenação da profundidade de diferentes objetos StageWebView. Não é recomendável sobrepor duas instâncias.
Quando o conteúdo do objeto StageWebView tem o foco, o objeto StageWebView tem a primeira oportunidade de manipular a entrada pelo teclado. O palco ao qual o objeto StageWebView é anexado emite qualquer entrada no teclado que não é tratada. O ciclo normal de captura/bolha de evento não se aplica aqui, visto que a instância de StageWebView não consta da lista de exibição.
No Android 3.0+, um aplicativo deve ativar a aceleração de hardware no Android manifestAdditions elemento do descritor de aplicativo de AIR para exibir o conteúdo de plug-in em um objeto de StageWebView.
Saiba mais
Elementos da API relacionados
Propriedade | Definido por | ||
---|---|---|---|
constructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto. | Object | ||
isHistoryBackEnabled : Boolean [somente leitura]
Indica se há uma página anterior no histórico de navegação. | StageWebView | ||
isHistoryForwardEnabled : Boolean [somente leitura]
Indica se há uma página seguinte no histórico de navegação. | StageWebView | ||
isSupported : Boolean [estático] [somente leitura]
Indica se há suporte à classe StageWebView no dispositivo atual. | StageWebView | ||
location : String [somente leitura]
O URL do local atual. | StageWebView | ||
mediaPlaybackRequiresUserAction : Boolean
Defina se o usuário deve executar um gesto para reproduzir o conteúdo de mídia. | StageWebView | ||
stage : Stage
O palco em que este objeto StageWebView está exibido. | StageWebView | ||
title : String [somente leitura]
O valor do título HTML. | StageWebView | ||
viewPort : Rectangle
A área do palco em que o objeto StageWebView está exibido. | StageWebView |
Método | Definido por | ||
---|---|---|---|
Cria um objeto StageWebView. | StageWebView | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra um objeto de ouvinte de evento em um objeto EventDispatcher, de forma que o ouvinte receba a notificação de um evento. | EventDispatcher | ||
Atribui o foco ao conteúdo dentro deste objeto StageWebView. | StageWebView | ||
Envia um evento para o fluxo de eventos. | EventDispatcher | ||
Descarta este objeto StageWebView. | StageWebView | ||
Desenha a porta de exibição do StageWebView para um bitmap. | StageWebView | ||
Verifica se o objeto EventDispatcher tem ouvintes registrados para um tipo específico de evento. | EventDispatcher | ||
Indica se um objeto tem uma propriedade especificada definida. | Object | ||
Navega até a página anterior no histórico de navegação. | StageWebView | ||
Navega até a página seguinte no histórico de navegação. | StageWebView | ||
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro. | Object | ||
Carrega e exibe a string HTML especificada. | StageWebView | ||
Carrega a página no URL especificado. | StageWebView | ||
Indica se a propriedade especificada existe e é enumerável. | Object | ||
Recarrega a página atual. | StageWebView | ||
Remove um ouvinte do objeto EventDispatcher. | EventDispatcher | ||
Define a disponibilidade de uma propriedade dinâmica para operações de repetição. | Object | ||
Interrompe a operação de carregamento atual. | StageWebView | ||
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade. | Object | ||
Retorna a representação de string do objeto especificado. | Object | ||
Retorna o valor primitivo do objeto especificado. | Object | ||
Verifica se um ouvinte de evento está registrado nesse objeto EventDispatcher ou em qualquer um de seus ancestrais para o tipo de evento especificado. | EventDispatcher |
Evento | Resumo | Definido por | ||
---|---|---|---|---|
[transmissão de evento] Despachado quando o Flash Player ou o aplicativo do AIR ganha o foco do sistema operacional e está se tornando inativo. | EventDispatcher | |||
Sinaliza que a última operação de carregamento solicitada pelo método loadString() ou loadURL() foi concluída. | StageWebView | |||
[transmissão de evento] Despachado quando o Flash Player ou o aplicativo do AIR perde o foco do sistema operacional e está se tornando inativo. | EventDispatcher | |||
Sinaliza a ocorrência de um erro. | StageWebView | |||
Despachado quando este objeto StageWebView recebe o foco. | StageWebView | |||
Despachado quando StageWebView libera o foco. | StageWebView | |||
Sinaliza que a propriedade location do objeto StageWebView foi alterada. | StageWebView | |||
Sinaliza que a propriedade location do objeto StageWebView está prestes a ser alterada. | StageWebView |
isHistoryBackEnabled | propriedade |
isHistoryForwardEnabled | propriedade |
isSupported | propriedade |
location | propriedade |
mediaPlaybackRequiresUserAction | propriedade |
mediaPlaybackRequiresUserAction:Boolean
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 21.0 |
Defina se o usuário deve executar um gesto para reproduzir o conteúdo de mídia. Para iOS, esta propriedade não será honrada, e media autoPlay pode ser arquivada somente por meio do construtor StageWebView()
. O valor padrão é Verdadeiro.
Implementação
public function get mediaPlaybackRequiresUserAction():Boolean
public function set mediaPlaybackRequiresUserAction(value:Boolean):void
stage | propriedade |
title | propriedade |
viewPort | propriedade |
viewPort:Rectangle
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
A área do palco em que o objeto StageWebView está exibido.
Implementação
public function get viewPort():Rectangle
public function set viewPort(value:Rectangle):void
Lança
RangeError — O valor do Retângulo não é válido.
|
StageWebView | () | Construtor |
public function StageWebView(useNative:Boolean = false, mediaPlaybackRequiresUserAction:Boolean = true)
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Cria um objeto StageWebView.
O objeto fica invisível até ser anexado a um palco e até que viewPort
seja definido.
Observação: Embora não seja proibido, com alguns conteúdos, falhas podem ocorrer quando o mesmo processo usar o WebKit incorporado e do sistema. Portanto, recomenda-se que todos os StageWebViews em um determinado aplicativo sejam criado com o mesmo valor para o useNative. Além disso, como o HTMLLoader depende do WebKit incorporado, aplicativos que usam HTMLLoader só devem criar StageWebViews com o useNative definido como falso.
ParâmetrosuseNative:Boolean (default = false ) — Quando o useNative for falso, a versão de WebKit incorporada no AIR é usada como a origem do StageWebView criado. Quando o useNative for verdadeiro, o AIR usará o mecanismo da Web padrão do sistema. As plataformas móveis suportam apenas o uso do mecanismo da Web sistema, então o useNative é ignorado em plataformas móveis.
| |
mediaPlaybackRequiresUserAction:Boolean (default = true ) — true torna-se o padrão. Quando mediaPlaybackRequiresUserAction for true, WebView exige uma ação do usuário para reproduzir. Caso seja false, o conteúdo de WebView será reproduzido automaticamente.
|
assignFocus | () | método |
public function assignFocus(direction:String = "none"):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Atribui o foco ao conteúdo dentro deste objeto StageWebView.
Os valores de direção são definidos na classe FocusDirection e incluem: "bottom", "none" e "top".
Parâmetros
direction:String (default = "none ") — especifica se o primeiro ou o último objeto passível de receber o foco no conteúdo exibido deve receber foco.
|
Elementos da API relacionados
dispose | () | método |
public function dispose():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Descarta este objeto StageWebView.
A chamada a dispose()
é opcional. Se você não mantiver uma referência a esta instância de StageWebView, ela se qualificará à coleta de lixo. Chamar dispose()
pode fazer a coleta de lixo ocorrer mais cedo, ou em um momento mais conveniente.
drawViewPortToBitmapData | () | método |
public function drawViewPortToBitmapData(bitmap:BitmapData):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.6 |
Desenha a porta de exibição do StageWebView para um bitmap.
Capture o bitmap e defina o palco como null
para exibir o conteúdo acima do objeto StageWebView.
Observação: O comportamento deste método não é garantido para páginas que contenham conteúdos de plug-ins (como arquivos PDF e SWF incorporados).
Parâmetros
bitmap:BitmapData — O objeto BitmapData no qual será desenhada a porção visível da porta de exibição de StageWebView.
|
Lança
ArgumentError — A largura ou a altura do bitmap é diferente da largura ou da altura da porta de exibição.
| |
Error — O bitmap é nulo.
|
Exemplo ( Como usar este exemplo )
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étodo |
public function historyBack():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Navega até a página anterior no histórico de navegação.
historyForward | () | método |
public function historyForward():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Navega até a página seguinte no histórico de navegação.
loadString | () | método |
public function loadString(text:String, mimeType:String = "text/html"):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Carrega e exibe a string HTML especificada.
Quando o método loadString()
é usado, o location
é informado como "about:blank". Somente os esquemas de URI padrão podem ser usados em URLs contidos em uma string HTML. Os esquemas de URI do AIR, "app:" e "app-storage:" não são permitidos.
O conteúdo HTML não pode carregar recursos locais, como arquivos de imagem. XMLHttpRequests não são permitidos.
Há suporte somente para os tipos MIME "texto/html" e "aplicativo/xhtml+xml".
Parâmetros
text:String — a string do conteúdo HTML ou XHTML a ser exibido.
| |
mimeType:String (default = "text/html ") — O tipo MIME do conteúdo: "text/html" ou "application/xhtml+xml".
|
Exemplo ( Como usar este exemplo )
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étodo |
public function loadURL(url:String):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Carrega a página no URL especificado.
O URL pode usar os seguintes esquemas de URI: http:, https:, file:, data: e javascript:. Conteúdo carregado com o arquivo: o esquema pode carregar outros recursos locais.
Parâmetros
url:String |
Exemplo ( Como usar este exemplo )
loadURL()
.
Nota: no Android, você precisa especificar a permissão INTERNET no descritor do aplicativo AIR para carregar URLs remotos.
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étodo |
public function reload():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Recarrega a página atual.
stop | () | método |
public function stop():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Interrompe a operação de carregamento atual.
complete | Evento |
flash.events.Event
propriedade Event.type =
flash.events.Event.COMPLETE
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Sinaliza que a última operação de carregamento solicitada pelo método loadString()
ou loadURL()
foi concluída.
Event.COMPLETE
define o valor da propriedade type
de um objeto de evento complete
.
Esse evento tem as seguintes propriedades:
Propriedade | Valor |
---|---|
bubbles | false |
cancelable | false ; não há comportamento padrão a ser cancelado. |
currentTarget | O objeto que está processando ativamente o objeto Event com um ouvinte de evento. |
target | O objeto de rede que concluiu o carregamento. |
error | Evento |
flash.events.ErrorEvent
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Sinaliza a ocorrência de um erro.
focusIn | Evento |
flash.events.FocusEvent
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Despachado quando este objeto StageWebView recebe o foco.
focusOut | Evento |
flash.events.FocusEvent
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Despachado quando StageWebView libera o foco.
locationChange | Evento |
flash.events.LocationChangeEvent
propriedade LocationChangeEvent.type =
flash.events.LocationChangeEvent.LOCATION_CHANGE
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Sinaliza que a propriedadelocation
do objeto StageWebView foi alterada.
O evento não pode ser cancelado.
Despachado depois de cada alteração de local. locationChanging | Evento |
flash.events.LocationChangeEvent
propriedade LocationChangeEvent.type =
flash.events.LocationChangeEvent.LOCATION_CHANGING
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 2.5 |
Sinaliza que a propriedade location
do objeto StageWebView está prestes a ser alterada.
Um evento locationChanging é despachado somente quando a alteração do local é iniciada por conteúdo HTML ou por código em execução dentro do objeto StageWebView, como quando o usuário clica em um link. Por padrão, o novo local é exibido nesse objeto StageWebView. Você pode chamar o método preventDefault()
do objeto de evento para cancelar o comportamento padrão. Por exemplo, você pode usar a função flash.net.navigateToURL()
para abrir a página no navegador do sistema com base na propriedade location
do objeto de evento
Um evento locationChanging não é despachado quando você altera o local com os seguintes métodos:
historyBack()
historyForward()
loadString()
loadURL()
reload()
LOCATION_CHANGING
define o valor do objeto LocationChangeEvent da propriedade type
despachado antes de uma alteração no local da página.
loadURL()
e usa as teclas programáveis Voltar e Pesquisar do dispositivo para navegação pelo histórico.
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:10 AM Z