{"id":13396058,"url":"https://github.com/recruit-lifestyle/WaveSwipeRefreshLayout","last_synced_at":"2025-03-13T22:31:37.347Z","repository":{"id":35543775,"uuid":"39815147","full_name":"recruit-lifestyle/WaveSwipeRefreshLayout","owner":"recruit-lifestyle","description":null,"archived":false,"fork":false,"pushed_at":"2021-05-17T19:25:05.000Z","size":7512,"stargazers_count":1925,"open_issues_count":22,"forks_count":379,"subscribers_count":71,"default_branch":"master","last_synced_at":"2024-10-29T17:44:58.474Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://engineer.recruit-lifestyle.co.jp/techblog/2015-08-03-swipe-refresh-layout/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/recruit-lifestyle.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-07-28T05:36:59.000Z","updated_at":"2024-09-27T09:32:27.000Z","dependencies_parsed_at":"2022-09-02T12:30:51.018Z","dependency_job_id":null,"html_url":"https://github.com/recruit-lifestyle/WaveSwipeRefreshLayout","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/recruit-lifestyle%2FWaveSwipeRefreshLayout","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/recruit-lifestyle%2FWaveSwipeRefreshLayout/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/recruit-lifestyle%2FWaveSwipeRefreshLayout/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/recruit-lifestyle%2FWaveSwipeRefreshLayout/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/recruit-lifestyle","download_url":"https://codeload.github.com/recruit-lifestyle/WaveSwipeRefreshLayout/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242939962,"owners_count":20209881,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-30T18:00:38.636Z","updated_at":"2025-03-13T22:31:36.565Z","avatar_url":"https://github.com/recruit-lifestyle.png","language":"Java","funding_links":[],"categories":["Index `(light-weight pages)`","下拉刷新","Index","Java"],"sub_categories":[],"readme":"# WaveSwipeRefreshLayout\n[![Android Arsenal](https://img.shields.io/badge/Android%20Arsenal-WaveSwipeRefreshLayout-brightgreen.svg?style=flat)](http://android-arsenal.com/details/1/2229)\n[![Release](https://img.shields.io/github/release/recruit-lifestyle/WaveSwipeRefreshLayout.svg?label=maven version)](https://github.com/recruit-lifestyle/WaveSwipeRefreshLayout)\n[![License](https://img.shields.io/hexpm/l/plug.svg)]()\n\nThis project aims to provide a reusable WaveSwipe to Refresh widget for Android.  \nEven if this works fine with API.13 or less, we support only for API.14 or more.\n\n\n##Screenshots\n*Watch YouTube video [here](https://www.youtube.com/watch?v=aGeeLE9vxY4\u0026feature=youtu.be).*  \n![](./sc/animation.gif)  \n\u003cimg src=\"./sc/sc1.png\" width=\"200\"\u003e\n\u003cimg src=\"./sc/sc2.png\" width=\"200\"\u003e\n\u003cimg src=\"./sc/sc3.png\" width=\"200\"\u003e\n\n## Requirements\nTarget Sdk Version : 21  \nMin Sdk Version : 14  \n\n##How to use\n1) Add this to your **build.gradle**.\n```java\nrepositories {\n    maven {\n        url \"https://jitpack.io\"\n    }\n}\n\ndependencies {\n  compile 'com.github.recruit-lifestyle:WaveSwipeRefreshLayout:1.6'\n}\n```  \n\n2) Add  ```java jp.co.recruit_lifestyle.android.widget.WaveSwipeRefreshLayout``` , which has at least one AbsListView, to your layout XML file.\n```java\n\u003cjp.co.recruit_lifestyle.android.widget.WaveSwipeRefreshLayout\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        android:id=\"@+id/main_swipe\"\u003e\n\n      \u003cListView\n          android:id=\"@+id/main_list\"\n          android:layout_width=\"match_parent\"\n          android:layout_height=\"match_parent\"/\u003e\n\n\u003c/jp.co.recruit_lifestyle.android.widget.WaveSwipeRefreshLayout\u003e\n```  \n\n3) Add the function so that the your application knows when a user has completed a 'WaveSwipeRefresh'.\n```java\nmWaveSwipeRefreshLayout = (WaveSwipeRefreshLayout) findViewById(R.id.main_swipe);\nmWaveSwipeRefreshLayout.setOnRefreshListener(new WaveSwipeRefreshLayout.OnRefreshListener() {\n  @Override public void onRefresh() {\n    // Do work to refresh the list here.\n    new Task().execute();\n  }\n});\n\nprivate class Task extends AsyncTask\u003cVoid, Void, String[]\u003e {\n  ...\n  @Override protected void onPostExecute(String[] result) {\n    // Call setRefreshing(false) when the list has been refreshed.\n    mWaveSwipeRefreshLayout.setRefreshing(false);\n    super.onPostExecute(result);\n  }\n}\n```\n\n## Credits\n\nWaveSwipeRefresh is owned and maintained by [RECRUIT LIFESTYLE CO., LTD.](http://www.recruit-lifestyle.co.jp/)\n\nWaveSwipeRefresh was originally created by  \n[Yuki Mima](https://github.com/amyu)  \n[Jumpei Matsuda](https://github.com/jmatsu)\n\n\n##License\n\n    Copyright 2015 RECRUIT LIFESTYLE CO., LTD.\n\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use this file except in compliance with the License.\n    You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frecruit-lifestyle%2FWaveSwipeRefreshLayout","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frecruit-lifestyle%2FWaveSwipeRefreshLayout","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frecruit-lifestyle%2FWaveSwipeRefreshLayout/lists"}