Taufiq
Taufiq

Reputation: 23

How to load url link in webview in a fragment?

I want to load url in Webview in a fragment. Please see my Manifest and page_1 file. The pages in the fragment changed to white from the defined color but nothing shows like google search page.

page_1.java

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_page_1, container,false);
String url = "https://www.google.com/";
WebView view = (WebView) v.findViewById(R.id.web1);

    view.getSettings().setJavaScriptEnabled(true);
    view.getSettings().setLoadWithOverviewMode(true);
    view.getSettings().setUseWideViewPort(true);
    view.getSettings().setBuiltInZoomControls(true);
    view.getSettings().setPluginState(WebSettings.PluginState.ON);
    view.setWebViewClient(new WebViewClient());

    view.loadUrl(url);

    return v;
}

fragment_page_1

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#0066ff"
android:orientation="vertical"
tools:context="layout.page_1">

<!-- TODO: Update blank fragment layout -->
<WebView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/web1"/>
</LinearLayout>

Manifest

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

Upvotes: 1

Views: 4275

Answers (1)

ZeroOne
ZeroOne

Reputation: 9117

I have tried your code.. and its working fine..maybe try to clean your app cache

public class FragmentWeb extends Fragment {

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_page, container,false);
    }

    @Override
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);

        String url = "https://www.google.com/";
        WebView web = (WebView) view.findViewById(R.id.web1);

        web.getSettings().setJavaScriptEnabled(true);
        web.getSettings().setLoadWithOverviewMode(true);
        web.getSettings().setUseWideViewPort(true);
        web.getSettings().setBuiltInZoomControls(true);
        web.getSettings().setPluginState(WebSettings.PluginState.ON);
        web.setWebViewClient(new WebViewClient());

        web.loadUrl(url);

    }
}

Upvotes: 3

Related Questions