Как использовать веб-просмотр в фиксированном размере? - PullRequest
2 голосов
/ 19 ноября 2011

Мне нужна страница, которая показывает веб-содержимое в фиксированных width и height.Я поместил веб-просмотр в xml-файл высотой 200 пикселей, но при загрузке этой страницы он напрямую перенаправлялся в представление браузера по умолчанию.При нажатии на кнопку «Назад» в телефоне он перенаправляет на исходную страницу, после чего веб-просмотр ничего не показывает.

в моем XML-файле

 <WebView  android:layout_width="fill_parent" android:layout_height="200px" android:id="@+id/wvbrowser" />

в коде

  WebView wvbrowser;
    wvbrowser=(WebView)findViewById(R.id.wvbrowser);
    wvbrowser.loadUrl("http://www.orkut.com");

Так скажи мне, где я не прав?и как показать WebView в фиксированном размере?

Ответы [ 2 ]

5 голосов
/ 19 ноября 2011

Попробуйте это ...

создайте отдельный класс.

public class HelloWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        return true;
    }
}

Затем в своей деятельности используйте это.

WebView wvbrowser;
wvbrowser=(WebView)findViewById(R.id.wvbrowser);
wvbrowser.setWebViewClient(new HelloWebViewClient());
wvbrowser.getSettings().setJavaScriptEnabled(true);
wvbrowser.loadUrl("http://www.orkut.com");
0 голосов
/ 19 ноября 2011

Когда пользователь щелкает ссылку с веб-страницы в вашем WebView, браузер Android по умолчанию обрабатывает Намерение для просмотра веб-страницы, потому что ваша активность технически не включена для этого.Вам необходимо переопределить класс WebViewClient и разрешить вашей активности веб-просмотра обрабатывать свои собственные запросы URL.

setWebViewClient(new HelloWebViewClient());

В приведенной выше строке создается WebViewClient, который загружает любой URL, выбранный из этого WebView, в тот же WebView.

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
    view.loadUrl(url);
    return true;
}

Метод shouldOverrideUrlLoading (WebView, String) передается текущему WebView и запрошенному URL-адресу, поэтому все, что ему нужно сделать, это загрузить URL-адрес в данном представлении.Возвращение true говорит о том, что метод обработал URL, и событие не должно распространяться.

...