Webview (или WebViewFragment) - PullRequest
       2

Webview (или WebViewFragment)

0 голосов
/ 31 марта 2012

Я немного растерялся, поэтому, пожалуйста, помогите мне.

Я работал над приложением на ICS 4.0.2 для моего GNex.

Пока что моя структура приложения выглядит следующим образом:

DemoActivity extends Activity содержит три фрагмента, которые отображаются в виде вкладок: MapFragmentTab расширяет фрагмент SettingsFragmentTab расширяет фрагмент AboutFragmentTab расширяет фрагмент

Во фрагменте карты я хочу, чтобы в WebView отображались Google Maps. Это мой MapFragmentTab:

public class MapFragmentTab extends Fragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
    {   
        View mainView = (View) inflater.inflate(R.layout.map, container, false);
        WebView webView = (WebView) mainView.findViewById(R.id.webview);
        webView.setWebViewClient(new MyWebViewClient());
        webView.loadUrl("http://maps.google.com");
        return mainView;
        //return inflater.inflate(R.layout.map, container, false);
    }

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

Сейчас, похоже, это работает, однако Google Maps (хотя фрейм страницы загружается) не загружается. Я использую Chrome Beta, еще не пробовал браузер по умолчанию.

Я действительно запутался, когда дело доходит до WebViews, WebViewFragments и Fragments ... любая помощь будет оценена.

1 Ответ

1 голос
/ 31 марта 2012

Вам необходимо включить JavaScript специально для WebView, так как он по умолчанию отключен.Используйте что-то вроде: webView.getSettings().setJavaScriptEnabled(true);

От: http://developer.android.com/reference/android/webkit/WebSettings.html#setJavaScriptEnabled(boolean) http://developer.android.com/resources/tutorials/views/hello-webview.html

...