android: vista web dentro del cuadro de diálogo o ventana emergente

cómo agregar vista web dentro del cuadro de diálogo o ventana emergente.

mi vista web mantiene la URL WebView.loadurl (). Cuando ve el cuadro de diálogo agregado, aún se mueve al navegador.

He estado en Android cargando la vista web en el diálogo, pero ¿no hay un ejemplo de cómo hacerlo? Gracias

Aquí hay un ejemplo:

AlertDialog.Builder alert = new AlertDialog.Builder(this); alert.setTitle("Title here"); WebView wv = new WebView(this); wv.loadUrl("http:\\www.google.com"); wv.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } }); alert.setView(wv); alert.setNegativeButton("Close", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int id) { dialog.dismiss(); } }); alert.show(); 

Debe anular setWebViewClient () ..

 mWebView = (WebView) view.findViewById(R.id.wv1); mWebView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return false; } }); mWebView.loadUrl(mUrl); 

Si intenta mostrar una vista web en una ventana emergente, debe establecer el ancho y alto de su distribución lineal en el archivo de diseño emergente (popup_layout.xml) como se muestra a continuación.

Tienes que hacer esto porque el diseño de la ventana emergente no tiene ningún padre para referirse al tamaño cuando intentas usar ‘match_parent’ más o menos.

      

Código de PopupWindow:

 @Override public void onWindowFocusChanged(boolean hasFocus) { try { int[] location = new int[2]; (xml item where you want it to appear).getLocationOnScreen(location); //Get x and y positions p = new Point(); px = location[0]; py = location[1]; } catch (Exception e) { e.printStackTrace(); } } private void popTab(final Activity myActivity) { popupWidth = 350; popupHeight = 600; popup.setWidth(popupWidth); popup.setHeight(popupHeight); // Inflate the popup_layout.xml LinearLayout viewGroup = (LinearLayout) myActivity.findViewById(R.id.myMainLayoutID); LayoutInflater layoutInflater = (LayoutInflater) myActivity .getSystemService(Context.LAYOUT_INFLATER_SERVICE); View layoutTab = layoutInflater.inflate(R.layout.mylayout, viewGroup); //Get webview from xml WebView wv = (WebView)layoutTab.findViewById(R.id.webView2); // Creating the PopupWindow final PopupWindow popup = new PopupWindow(layoutTab); //Set to view popup.setContentView(layoutTab); //Setup webview wv.loadUrl("http:\\www.google.com"); wv.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } }); //Add some animation from style folder popup.update(); popup.setAnimationStyle(R.style.Animation); popup.setFocusable(true); popup.showAtLocation(layoutTab, Gravity.NO_GRAVITY, px, py); } 

Use popTab () donde quiera. Espero que esto ayude con la ventana emergente.