使用的工具 Android Studio
項目主要用於實現下拉刷新重新加載圖片的功能(因爲只爲演示,刷新部分的邏輯代碼沒有詳細的編寫)
要想用於刷新功能,只需要將想要刷新的控件包裹在SwipeRefreshLayout子控件下
activity_main.xml的代碼如下:
<android.support.v4.widget.SwipeRefreshLayout android:id="@+id/swipe_refresh" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <android.support.v7.widget.RecyclerView android:id="@+id/recycler_view" android:layout_width="match_parent" android:layout_height="match_parent" /> </android.support.v4.widget.SwipeRefreshLayout>
在MainActivity代碼中修改如下:
public class MainActivity extends AppCompatActivity {
private SwipeRefreshLayout swipeRefresh;
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
swipeRefresh = (SwipeRefreshLayout) findViewById(R.id.swipe_refresh); swipeRefresh.setColorSchemeResources(R.color.colorPrimary); swipeRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { refreshFruits(); } }); return true;
//下拉刷新功能實現 private void refreshFruits() { new Thread(new Runnable() { @Override public void run() { try{ Thread.sleep(2000); }catch (InterruptedException e){ e.printStackTrace(); } runOnUiThread(new Runnable() { @Override public void run() { initFruits(); adapter.notifyDataSetChanged(); swipeRefresh.setRefreshing(false); } }); } }).start(); }
運行代碼發現下拉到列表底部的時候可以實現刷新的功能