Как установить WebView как не полноэкранный? - PullRequest
7 голосов
/ 01 августа 2010

Я пытаюсь использовать WebView в своем приложении для Android.Я создаю свое веб-представление в коде (не в XML).Моя проблема в том,когда я вызываю loadUrl метод webview, он переходит в полноэкранный режим.Как я могу сохранить размер веб-просмотра, например, 200x200 пикселей?

Если есть какой-либо другой вариант вместо веб-просмотра, конечно, приветствуем:)

Спасибо,

Ответы [ 4 ]

14 голосов
/ 01 августа 2010

Вполне возможно, что вы видите не вашу деятельность, а приложение браузера, потому что URL-адрес, на который вы ссылались, сделал перенаправление.Используйте WebViewClient и shouldOverrideUrlLoading(), чтобы перехватить перенаправление и отправить его обратно на свой WebView.

5 голосов
/ 02 августа 2010

@ Махтиас Лин, пожалуйста, смотрите мой код для создания и использования 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/");

Выше кода не установлен мой веб-просмотр на высоту 416 пикселей.

@ CommonsWare, я попробовал ваше предложение с помощью следующего кода, и это удивительно работает, спасибо.

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

    }  
 });  

Но это использование принесло некоторые новые проблемы.Когда я переопределяю shouldOverrideURLLoading, веб-представление отображается без адресной строки, без навигации (назад, вперед и т. Д.)?

А также, веб-представление не принимает вводимые пользователем данные?

Хорошо,Я редактирую свой вопрос:)

Я искал и нашел следующий дополнительный набор, чтобы веб-просмотр мог получать входные данные;

webView.requestFocus(View.FOCUS_DOWN);

С другой стороны, я думаю, я создаммои собственные кнопки назад, вперед и адресная строка для моего веб-просмотра.Я также прикреплю "что случилось" к этой теме, когда создаю свои кнопки и адресную строку.

Best,

4 голосов
/ 07 декабря 2011
WebView wb=new WebView();
wb.setInitialScale(60);

используется для настройки макета эмулятора. 60 означает значение%. мы можем использовать от 0% до 100%.

0 голосов
/ 01 августа 2010

Смотрите мой ответ и комментарии на как показать веб-просмотр внутри действия в середине экрана

Примените LayoutParams к вашему WebView или к Layout (то есть LinearLayout), который окружает WebView, если есть, т.е.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...