Browse Source

[콘텐츠상세][Common] 콘텐츠 마지막장 도달시 토스트 한번만 띄우기 구현중

Hasemi 7 năm trước cách đây
mục cha
commit
aee1e3210b

+ 22 - 10
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/contents/ContentsPresenter.java

@@ -37,6 +37,7 @@ public class ContentsPresenter extends ContentsBasePresenter<ContentsModel, ICon
 
   private IDialogBase dialogBase;
   private DoubleChecker doubleChecker;
+  private Toast toast;
 
   public ContentsPresenter(ContentsModel model, IContentsView view) {
     super(model, view);
@@ -459,17 +460,28 @@ public class ContentsPresenter extends ContentsBasePresenter<ContentsModel, ICon
   }
 
   private void showLastPageToast() {
-    switch (model.getContentsType()) {
-      case ContentsDetailBean.TYPE_CARD:
-      case ContentsDetailBean.TYPE_CARD_LISTICLE:
-        Toast.makeText(view.getActivity(), R.string.last_contents_card, Toast.LENGTH_SHORT).show();
-        break;
-      case ContentsDetailBean.TYPE_LISTICLE:
-        Toast.makeText(view.getActivity(), R.string.last_contents_listicle, Toast.LENGTH_SHORT).show();
-        break;
-      default:
-        break;
+    int stringResource;
 
+    if (model.getContentsType().equals(ContentsDetailBean.TYPE_LISTICLE)) {
+      stringResource = R.string.last_contents_listicle;
+    }
+    else {
+      stringResource = R.string.last_contents_card;
     }
+
+    Runnable runnable = new Runnable() {
+      @Override
+      public void run() {
+        Toast.makeText(view.getActivity(), stringResource, Toast.LENGTH_SHORT);
+        if (toast != null) {
+          toast.cancel();
+        }
+        else {
+          toast = Toast.makeText(view.getActivity(), stringResource, Toast.LENGTH_SHORT);
+          toast.show();
+        }
+      }
+    };
+    runnable.run();
   }
 }