From 4d900cb4695a3ab81f8af57b8f005dd794a83bc4 Mon Sep 17 00:00:00 2001 From: Rainer-Lang Date: Fri, 29 Sep 2017 13:17:50 +0200 Subject: [PATCH 1/5] added more precise explanation, typos, layout --- README.md | 52 ++++++++++++++++++++++++++++------------------------ 1 file changed, 28 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index a5c727d..91b8d67 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ What's LoadSir? **error**, **empty**, **timeout** or even your **custom page** when you load a page (such as do net job). LoadSir is very different from other similar libraries. I mean... ***better***. -Preview +Preview - samples --- | **in [Activity](https://github.com/KingJA/LoadSir/blob/master/app/src/main/java/sample/kingja/loadsir/target/NormalActivity.java)**|**in [View](https://github.com/KingJA/LoadSir/blob/master/app/src/main/java/sample/kingja/loadsir/target/ViewTargetActivity.java)**|**in [Fragment](https://github.com/KingJA/LoadSir/blob/master/app/src/main/java/sample/kingja/loadsir/target/NormalFragment.java)**| |:---:|:----:|:----:| @@ -41,14 +41,14 @@ Feature * add multi load pages * thread-safety -How does LoadSir works? +How does LoadSir work? ---
🚀 Getting started --- -LoadSir only needs 3 steps to finish its task: **Config** -> **Register** -> **Display** +LoadSir only needs 3 steps: **1. Config** -> **2. Register** -> **3. Display** ### Download @@ -88,34 +88,37 @@ LoadSir loadSir = new LoadSir.Builder() .addCallback(new EmptyCallback()) .addCallback(new ErrorCallback()) .build(); - loadService = loadSir.register(this, new Callback.OnReloadListener() { - @Override - public void onReload(View v) { - // retry logic - } - }); +loadService = loadSir.register(this, new Callback.OnReloadListener() { + @Override + public void onReload(View v) { + // retry logic + } +}); ``` ### Step 2: Register -Tell LoadSir which "layout" you want be replaced with LoadLayout. +Tell LoadSir which "layout" you want to be replaced with LoadLayout. -* ###### Register in Activity +* ###### Register an Activity +The registered `Activity` will be handled by LoadSir. ```java @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_content); - // Your can change the callback on sub thread directly. + + // You can change the callback on sub thread directly. LoadService loadService = LoadSir.getDefault().register(this, new Callback.OnReloadListener() { @Override public void onReload(View v) { - // retry logic + // your retry logic } }); -}} +} ``` -* ###### Register in View +* ###### Register a View +The registered `ImageView` will be handled by LoadSir. ```java ImageView imageView = (ImageView) findViewById(R.id.iv_img); LoadSir loadSir = new LoadSir.Builder() @@ -126,27 +129,29 @@ loadService = loadSir.register(imageView, new Callback.OnReloadListener() { @Override public void onReload(View v) { loadService.showCallback(LoadingCallback.class); - // retry logic + // your retry logic } }); ``` -* ###### Register in Fragment +* ###### Register a Fragment +The registered `Fragment` will be handled by LoadSir. Use it in Fragment is a bit different from the other two, follow the template code. ```java @Nullable @Override -public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle - savedInstanceState) { +public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { //step 1:obtain root view rootView = View.inflate(getActivity(), R.layout.fragment_a_content, null); + //step 2:obtain the LoadService LoadService loadService = LoadSir.getDefault().register(rootView, new Callback.OnReloadListener() { @Override public void onReload(View v) { - // retry logic + // your retry logic } }); + //step 3:return the LoadLayout from LoadService return loadService.getLoadLayout(); } @@ -165,8 +170,7 @@ protected void loadFromNet() { loadService.showCallback(EmptyCallback.class); // do/show something else } ``` -Info: -- `showSuccess()` calls the `SuccessCallback` to "hide" LoadSir and show the content. +**Info:** `showSuccess()` calls the `SuccessCallback` to "hide" LoadSir and show the content. * ###### Convertor Display (recommended) If you want LoadSir to do callback automatically, you can pass a Convertor when you register. @@ -228,14 +232,14 @@ public class CustomCallback extends Callback { ``` ### Modify Callback Dynamically -Access the view of a `Callback. +Access the view of a `Callback`. ```java loadService = LoadSir.getDefault().register(...); loadService.setCallBack(EmptyCallback.class, new Transport() { @Override public void order(Context context, View view) { TextView mTvEmpty = (TextView) view.findViewById(R.id.tv_empty); - mTvEmpty.setText("fine, no data. You must fill it!"); + mTvEmpty.setText("Fine, no data. You must fill it!"); } }); ``` From 3528aae956de755cd1e5173d8e304bb89f4e4731 Mon Sep 17 00:00:00 2001 From: Rainer-Lang Date: Fri, 29 Sep 2017 20:10:39 +0200 Subject: [PATCH 2/5] small change --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 91b8d67..b977e40 100644 --- a/README.md +++ b/README.md @@ -10,8 +10,8 @@ What's LoadSir? :point_right:[![](https://img.shields.io/github/release/KingJA/LoadSir.svg)](https://github.com/KingJA/LoadSir/releases):point_left: [![](https://img.shields.io/badge/preview-v1.2.2-orange.svg)](https://github.com/KingJA/LoadSir/tree/v1.2.2-pre) -***LoadSir*** is a lightweight, good expandability Android library used for displaying different pages like **loading**, -**error**, **empty**, **timeout** or even your **custom page** when you load a page (such as do net job). LoadSir is very different from +***LoadSir*** is a lightweight, good expandable Android library used for displaying different pages like **loading**, +**error**, **empty**, **timeout** or even your **custom page** when you load data from database or a REST service (such as do net job). LoadSir is very different from other similar libraries. I mean... ***better***. Preview - samples From b0ada5364197c27a8b75e4ce54751b6328cf8229 Mon Sep 17 00:00:00 2001 From: Rainer-Lang Date: Fri, 29 Sep 2017 20:12:19 +0200 Subject: [PATCH 3/5] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b977e40..acd7b80 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ What's LoadSir? [![](https://img.shields.io/badge/preview-v1.2.2-orange.svg)](https://github.com/KingJA/LoadSir/tree/v1.2.2-pre) ***LoadSir*** is a lightweight, good expandable Android library used for displaying different pages like **loading**, -**error**, **empty**, **timeout** or even your **custom page** when you load data from database or a REST service (such as do net job). LoadSir is very different from +**error**, **empty**, **timeout** or even your **custom page** when you load data from database or a REST service. LoadSir is very different from other similar libraries. I mean... ***better***. Preview - samples From e1b1345ad916a1978fe6a6016c4b115501ce5a12 Mon Sep 17 00:00:00 2001 From: KingJA Date: Thu, 12 Oct 2017 22:16:09 +0800 Subject: [PATCH 4/5] Update README-cn.md --- README-cn.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README-cn.md b/README-cn.md index 3daaec1..f772cb6 100644 --- a/README-cn.md +++ b/README-cn.md @@ -39,6 +39,7 @@ LoadSir的功能及特点 * :star:可对单个状态页单独设置点击事件,根据返回boolean值覆盖或者结合OnReloadListener使用,如网络错误可跳转设置页 * :star:无预设页面,低耦合,开发者随心配置 * :star:可保留标题栏(Toolbar,titile view等) +* 提供ProgressCallback,HintCallback两个自带Callback * 可设置重新加载点击事件(OnReloadListener) * 可自定义状态页(继承Callback类) * 可在子线程直接切换状态 @@ -272,4 +273,4 @@ Any questions,Welcome to contact me. distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and - limitations under the License. \ No newline at end of file + limitations under the License. From 010c792371f1f029fe1903fd00557981ad4ba026 Mon Sep 17 00:00:00 2001 From: KingJA Date: Thu, 12 Oct 2017 22:17:49 +0800 Subject: [PATCH 5/5] Update README-cn.md --- README-cn.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README-cn.md b/README-cn.md index f772cb6..1eba3cb 100644 --- a/README-cn.md +++ b/README-cn.md @@ -39,7 +39,6 @@ LoadSir的功能及特点 * :star:可对单个状态页单独设置点击事件,根据返回boolean值覆盖或者结合OnReloadListener使用,如网络错误可跳转设置页 * :star:无预设页面,低耦合,开发者随心配置 * :star:可保留标题栏(Toolbar,titile view等) -* 提供ProgressCallback,HintCallback两个自带Callback * 可设置重新加载点击事件(OnReloadListener) * 可自定义状态页(继承Callback类) * 可在子线程直接切换状态