Как установить веб-представление как неполный экран?

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

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

Спасибо,

7
задан Kaan 1 August 2010 в 13:25
поделиться

3 ответа

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

14
ответ дан 6 December 2019 в 07:49
поделиться

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

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

Лучшее,

5
ответ дан 6 December 2019 в 07:49
поделиться

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

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

0
ответ дан 6 December 2019 в 07:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: