Jelajahi Sumber

[이벤트][Common] 이벤트 커버 화살표 아이콘 클릭시 다음페이지 넘어가게 수정

Hasemi 6 tahun lalu
induk
melakukan
d5b8296d8e

+ 62 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/common/CoinSavingPopup.java

@@ -0,0 +1,62 @@
+package kr.co.zumo.app.lifeplus.view.screen.common;
+
+
+import android.os.Handler;
+import android.support.v4.app.FragmentManager;
+
+import kr.co.zumo.app.lifeplus.view.Event;
+import kr.co.zumo.app.lifeplus.view.dialog.CoinSavingDialog;
+import kr.co.zumo.app.lifeplus.view.dialog.DialogBuilder;
+import kr.co.zumo.app.lifeplus.view.dialog.DialogID;
+import kr.co.zumo.app.lifeplus.view.dialog.IAttribute;
+import kr.co.zumo.app.lifeplus.view.dialog.ICustomDialogListener;
+
+/**
+ * CoinSavingPopup
+ * <pre>
+ * </pre>
+ *
+ * @author 하세미
+ * @version 1.0
+ * @history 하세미   [2019-01-14]   [최초 작성]
+ * @since 2019-01-14
+ */
+public class CoinSavingPopup {
+
+  private FragmentManager fragmentManager;
+  private CoinSavingDialog dialog;
+
+  public CoinSavingPopup(FragmentManager fragmentManager) {
+
+    this.fragmentManager = fragmentManager;
+  }
+
+  public void show() {
+    dialog = new DialogBuilder<CoinSavingDialog, ICustomDialogListener>(fragmentManager, DialogID.COIN_SAVING)
+      .listener(new ICustomDialogListener<CoinSavingDialog>() {
+        @Override
+        public void onDialogResult(CoinSavingDialog dialog, Event event) {
+
+        }
+
+        @Override
+        public void onDialogCanceled(CoinSavingDialog dialog) {
+          dialog.dispose();
+
+        }
+      })
+      .attribute((IAttribute<CoinSavingDialog>) dialog -> {
+      })
+      .show();
+    /**
+     * 코인적립 다이얼로그는 2초후 자동으로 꺼진다.
+     */
+    new Handler().postDelayed(new Runnable() {
+      @Override
+      public void run() {
+        dialog.dispose();
+      }
+    }, 2000);
+  }
+
+}

+ 6 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/event/EventDetailCoverHolder.java

@@ -5,6 +5,7 @@ import android.widget.ImageView;
 import android.widget.TextView;
 
 import kr.co.zumo.app.R;
+import kr.co.zumo.app.lifeplus.view.Event;
 import kr.co.zumo.app.lifeplus.view.IEventListener;
 
 /**
@@ -27,6 +28,7 @@ public class EventDetailCoverHolder extends EventDetailView {
   private TextView tag1;
   private TextView tag2;
   private TextView tag3;
+  private ImageView imageViewArrow;
 
   public EventDetailCoverHolder(View itemView) {
     super(itemView);
@@ -38,6 +40,7 @@ public class EventDetailCoverHolder extends EventDetailView {
     tag1 = itemView.findViewById(R.id.text_view_tag1);
     tag2 = itemView.findViewById(R.id.text_view_tag2);
     tag3 = itemView.findViewById(R.id.text_view_tag3);
+    imageViewArrow = itemView.findViewById(R.id.image_view_arrow);
   }
 
   @Override
@@ -50,5 +53,8 @@ public class EventDetailCoverHolder extends EventDetailView {
     tag1.setText("#인생샷");
     tag2.setText("#힐링");
     tag3.setText("");
+    imageViewArrow.setOnClickListener(view -> {
+      listener.onEvent(new Event.Builder(Event.NEXT).index(getAdapterPosition()).build());
+    });
   }
 }

+ 1 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/event/EventPresenter.java

@@ -77,7 +77,7 @@ public class EventPresenter extends Presenter<BlankModel, IEventView> {
         }
         break;
         case Event.CLICK:
-          // TODO: 추후 API구현..
+          // TODO: 이벤트 상세 진입, 일단 index에 따라 분기하여 뷰 구현
           int index = event.getIndex();
           model.setDeliveryPackaging(index);
           go(ScreenID.EVENT_DETAIL);