如何将WebView设置为非全屏模式?

8
我正在尝试在我的安卓应用中使用WebView。我是在代码中创建WebView的(而不是在XML中)。问题是:当我调用webview的loadUrl方法时,webview会进入全屏模式。如何保持WebView的大小,例如200x200像素?
如果有其他选项代替WebView,当然欢迎:)
谢谢。

顺便提一下:同样的问题似乎在这里也有:http://stackoverflow.com/questions/3321958/how-use-a-webview-without-expand-and-without-interaction - Mathias Conradt
4个回答

15

可能您所看到的并不是您的活动,而是浏览器应用程序,因为您链接的URL进行了重定向。使用WebViewClientshouldOverrideUrlLoading()来捕获重定向并将其发送回您自己的WebView


那很可能是情况(和解决方法)。 - Bostone
你救了我 :) 谢谢 - Devix

5

@Mahtias Lin,请看我创建和使用WebView的代码:

WebView webView = new WebView(this);

RelativeLayout.LayoutParams p = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, 416);

WebSettings webSettings = webView.getSettings();
webSettings.setSavePassword(false);
webSettings.setSaveFormData(false);
webSettings.setJavaScriptEnabled(true);

webView.setLayoutParams(p);
webView.loadUrl("http://www.google.com/");

上面的代码没有将我的webview设置为416像素的高度。

@CommonsWare,我尝试了您提供的以下代码,神奇的是它有效了,谢谢。

webView.setWebViewClient(new WebViewClient() {  
   @Override  
   public boolean shouldOverrideUrlLoading(WebView view, String url)  
   {  
       view.loadUrl(url);
       return false;

    }  
 });  

但是这种用法带来了一些新问题,当我覆盖shouldOverrideURLLoading方法时,WebView将不会显示地址栏和导航(后退、前进等...)?
而且,WebView也不能接受用户输入?
好的,我正在编辑我的问题 :)
我搜索并找到了以下额外设置,可以使WebView能够接受输入;
webView.requestFocus(View.FOCUS_DOWN);

另一方面,我想为我的Webview创建自己的后退、前进按钮和地址栏。当我创建这些按钮和地址栏时,我也会将“发生了什么”附加到此线程中。
最好的祝福,

4
WebView wb=new WebView();
wb.setInitialScale(60);

这个用来设置模拟器的布局。60代表百分数,可以使用0%到100%。


0

请查看我在如何在活动中在屏幕中间显示Web视图上的回复和评论

将LayoutParams应用于您的WebView或WebView周围的Layout(即LinearLayout),如果有的话,例如setLayoutParams(LinearLayout.LayoutParams(200, 200));


谢谢您的快速回复。但是,我已经尝试过了。我将LayoutParams设置为:RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.FILL_PARENT, 200); webView.setLayoutParams(params);如果我不调用loadURL方法,这个方法可以正常工作。但是当我调用该方法时,webView会全屏显示。 - Kaan
很奇怪。你能否发布你的代码(编辑/添加到问题中),特别是在WebView的所有设置和初始化方面。你确定你看到的WebView是你自己的应用内WebView而不是默认浏览器吗? - Mathias Conradt

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接