Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Adding pull to refresh on webview for refreshing

I will add pull to refresh on my webview so it refresh my webview. i have seen all questions on this page but i can't find the good way to add pull to refresh...

Mainactivity.java

package com.vvhvb.hesselfeenstra.vvheerenveenseboys;  import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.webkit.WebView; import android.webkit.WebViewClient;  public class MainActivity extends AppCompatActivity {      @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);          String url ="http://heerenveenseboys.nl/";         WebView view=(WebView) this.findViewById(R.id.webView);         view.getSettings().setJavaScriptEnabled(true);         view.getSettings().setBuiltInZoomControls(true);         view.getSettings().setDisplayZoomControls(false);         view.setWebViewClient(new WebViewClient());         view.loadUrl(url);      }  } 

content_main.xml

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:app="http://schemas.android.com/apk/res-auto"     xmlns:tools="http://schemas.android.com/tools"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:paddingBottom="@dimen/activity_vertical_margin"     android:paddingLeft="@dimen/activity_horizontal_margin"     android:paddingRight="@dimen/activity_horizontal_margin"     android:paddingTop="@dimen/activity_vertical_margin"     app:layout_behavior="@string/appbar_scrolling_view_behavior"     tools:context="com.vvhvb.hesselfeenstra.vvheerenveenseboys.MainActivity"     tools:showIn="@layout/activity_main">      <WebView         android:layout_width="wrap_content"         android:layout_height="wrap_content"         android:id="@+id/webView"         android:layout_alignParentBottom="true"         android:layout_alignParentRight="true"         android:layout_alignParentEnd="true"         android:layout_alignParentTop="true"         android:layout_alignParentLeft="true"         android:layout_alignParentStart="true" /> </RelativeLayout> 

I hope anyone can help me and solve this problem for me.

like image 761
Hessel Avatar asked Jun 12 '16 14:06

Hessel


People also ask

How to add pull to refresh in WebView android?

In Android WebViewGold, within Config. java, just turn ENABLE__PULL_REFRESH to true.

How do you swipe to refresh on Android?

To add the swipe to refresh widget to an existing app, add SwipeRefreshLayout as the parent of a single ListView or GridView . Remember that SwipeRefreshLayout only supports a single ListView or GridView child. You can also use the SwipeRefreshLayout widget with a ListFragment .


1 Answers

You could wrap webview in Swipe refesh layout like this

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" app:layout_behavior="@string/appbar_scrolling_view_behavior" tools:context="com.vvhvb.hesselfeenstra.vvheerenveenseboys.MainActivity" tools:showIn="@layout/activity_main">  <android.support.v4.widget.SwipeRefreshLayout     android:id="@+id/swipeContainer"     android:layout_width="match_parent"     android:layout_height="match_parent"     app:layout_behavior="@string/appbar_scrolling_view_behavior">  <android.support.v4.widget.NestedScrollView     android:layout_width="match_parent"     android:layout_height="match_parent">      <WebView         android:id="@+id/webView"         android:layout_width="wrap_content"         android:layout_height="wrap_content"         android:layout_alignParentBottom="true"         android:layout_alignParentEnd="true"         android:layout_alignParentLeft="true"         android:layout_alignParentRight="true"         android:layout_alignParentStart="true"         android:layout_alignParentTop="true" />  </android.support.v4.widget.NestedScrollView> </android.support.v4.widget.SwipeRefreshLayout> </RelativeLayout> 

In java

package com.vvhvb.hesselfeenstra.vvheerenveenseboys;  import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.webkit.WebView; import android.webkit.WebViewClient;  public class MainActivity extends AppCompatActivity { WebView view; SwipeRefreshLayout mySwipeRefreshLayout;  @Override protected void onCreate(Bundle savedInstanceState) {     super.onCreate(savedInstanceState);     setContentView(R.layout.activity_main);     mySwipeRefreshLayout = (SwipeRefreshLayout)this.findViewById(R.id.swipeContainer);     String url ="http://heerenveenseboys.nl/";     view=(WebView) this.findViewById(R.id.webView);     view.getSettings().setJavaScriptEnabled(true);     view.getSettings().setBuiltInZoomControls(true);     view.getSettings().setDisplayZoomControls(false);     view.setWebViewClient(new WebViewClient());     view.loadUrl(url);      mySwipeRefreshLayout.setOnRefreshListener(     new SwipeRefreshLayout.OnRefreshListener() {     @Override     public void onRefresh() {         view.reload();     }     }     );  }  } 
like image 173
jitinsharma Avatar answered Oct 02 '22 14:10

jitinsharma