Lenguaje

WebChromeClient.OnCreateWindow(WebView, Boolean, Boolean, Message) Método

Definición

Solicite a la aplicación host que cree una nueva ventana.

[Android.Runtime.Register("onCreateWindow", "(Landroid/webkit/WebView;ZZLandroid/os/Message;)Z", "GetOnCreateWindow_Landroid_webkit_WebView_ZZLandroid_os_Message_Handler")]
public virtual bool OnCreateWindow(Android.Webkit.WebView? view, bool isDialog, bool isUserGesture, Android.OS.Message? resultMsg);
[<Android.Runtime.Register("onCreateWindow", "(Landroid/webkit/WebView;ZZLandroid/os/Message;)Z", "GetOnCreateWindow_Landroid_webkit_WebView_ZZLandroid_os_Message_Handler")>]
abstract member OnCreateWindow : Android.Webkit.WebView * bool * bool * Android.OS.Message -> bool
override this.OnCreateWindow : Android.Webkit.WebView * bool * bool * Android.OS.Message -> bool

Parámetros

view
WebView

WebView desde el que se originó la solicitud de una nueva ventana.

isDialog
Boolean

true si la nueva ventana debe ser un cuadro de diálogo, en lugar de una ventana de tamaño completo.

isUserGesture
Boolean

true si un gesto de usuario inició la solicitud, como el usuario que hace clic en un vínculo.

resultMsg
Message

Mensaje que se va a enviar cuando se ha creado una nueva vista web. resultMsg.obj es un WebView.WebViewTransport objeto . Se debe usar para transportar el nuevo Objeto WebView mediante una llamada a WebView.WebViewTransport#setWebView(WebView) WebView.WebViewTransport.setWebView(WebView).

Devoluciones

Este método debe devolver true si la aplicación host creará una nueva ventana, en cuyo caso resultMsg se debe enviar a su destino. De lo contrario, este método debe devolver false. La devolución false de este método, pero también el envío de resultMsg dará como resultado un comportamiento indefinido.

Atributos

Comentarios

Solicite a la aplicación host que cree una nueva ventana. Si la aplicación host elige respetar esta solicitud, debe volver true de este método, crear una nueva WebView para hospedar la ventana, insertarla en el sistema View y enviar el mensaje resultMsg proporcionado a su destino con el nuevo WebView como argumento. Si la aplicación host decide no respetar la solicitud, debe devolver false de este método. La implementación predeterminada de este método no hace nada y, por tanto, devuelve false.

Normalmente, las aplicaciones no deben permitir la creación de ventanas cuando la isUserGesture marca es false, ya que puede ser un elemento emergente no deseado.

Las aplicaciones deben tener cuidado de cómo muestran la nueva ventana: no simplemente superponga la vista web existente, ya que esto puede engañar al usuario sobre qué sitio está viendo. Si la aplicación muestra la dirección URL de la página principal, asegúrese de mostrar también la dirección URL de la nueva ventana de forma similar. Si la aplicación no muestra direcciones URL, considere la posibilidad de no permitir completamente la creación de nuevas ventanas.

<b>Nota:</b> No hay ninguna manera de indicar qué página solicitó la nueva ventana: la solicitud podría originarse desde un iframe de terceros dentro de WebView.

Java documentación para android.webkit.WebChromeClient.onCreateWindow(android.webkit.WebView, boolean, boolean, android.os.Message).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a