فهرست منبع

[회원가입][New] 온보딩에서 진입 시 뒤로 가기는 온보딩이 아닌 홈으로 이동

hyodong.min 7 سال پیش
والد
کامیت
9f26783368

+ 8 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/signup/SignUpBaseModel.java

@@ -17,6 +17,14 @@ import kr.co.zumo.app.lifeplus.model.Model;
  */
 public abstract class SignUpBaseModel extends Model {
 
+  public void setOnBoardingStart() {
+    SignUpModelHelper.getInstance().setOnBoardingStart();
+  }
+
+  public boolean isOnBoardingStarted() {
+    return SignUpModelHelper.getInstance().isOnBoardingStarted();
+  }
+
   public final int getBackwardWarnStringId() {
     return SignUpModelHelper.getInstance().getBackwardWarnStringId();
   }

+ 18 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/signup/SignUpBasePresenter.java

@@ -27,6 +27,14 @@ import kr.co.zumo.app.lifeplus.view.presenter.Presenter;
  */
 public abstract class SignUpBasePresenter<M extends SignUpBaseModel, V extends IView> extends Presenter<M, V> {
 
+  public void setOnBoardingStart(){
+    model.setOnBoardingStart();
+  }
+
+  public boolean isOnBoardingStarted() {
+    return model.isOnBoardingStarted();
+  }
+
   public SignUpBasePresenter(M model, V view) {
     super(model, view);
   }
@@ -36,7 +44,7 @@ public abstract class SignUpBasePresenter<M extends SignUpBaseModel, V extends I
       .listener(new ICustomConfirmListener<ConfirmDialog>() {
         @Override
         public void onPositiveResult(ConfirmDialog dialog, Event event) {
-          back(ScreenID.MAIN);
+          backOrHome();
         }
 
         @Override
@@ -57,4 +65,13 @@ public abstract class SignUpBasePresenter<M extends SignUpBaseModel, V extends I
       .show();
   }
 
+  protected void backOrHome() {
+    if (isOnBoardingStarted()) {
+      home();
+    }
+    else {
+      back(ScreenID.MAIN);
+    }
+  }
+
 }

+ 8 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/signup/SignUpModelHelper.java

@@ -20,7 +20,14 @@ import kr.co.zumo.app.lifeplus.bean.MobileAuthBean;
  */
 public class SignUpModelHelper {
 
-  // todo activity helper 로 변경 고려
+  private boolean isOnBoardingStarted;
+  public void setOnBoardingStart(){
+    isOnBoardingStarted = true;
+  }
+
+  public boolean isOnBoardingStarted() {
+    return isOnBoardingStarted;
+  }
 
   private static SignUpModelHelper ourInstance = new SignUpModelHelper();
 

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/signup/SignUpStartModel.java

@@ -7,7 +7,6 @@ import java.util.ArrayList;
 
 import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.bean.api.SignUpBannerBean;
-import kr.co.zumo.app.lifeplus.model.Model;
 import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.Event;
 
@@ -21,7 +20,7 @@ import kr.co.zumo.app.lifeplus.view.Event;
  * @history 민효동   [2018. 9. 21.]   [최초 작성]
  * @since 2018. 9. 21.
  */
-public class SignUpStartModel extends Model {
+public class SignUpStartModel extends SignUpBaseModel {
 
   protected ArrayList<SignUpBannerBean> bannerItems;
 
@@ -33,6 +32,7 @@ public class SignUpStartModel extends Model {
   @Override
   protected void createViewInternal() {
   }
+
   @Override
   protected void destroyInternal() {
 

+ 5 - 14
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/signup/SignUpStartPresenter.java

@@ -10,7 +10,6 @@ import kr.co.zumo.app.lifeplus.helper.ActionBarHelper;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
 import kr.co.zumo.app.lifeplus.view.DoubleChecker;
 import kr.co.zumo.app.lifeplus.view.Event;
-import kr.co.zumo.app.lifeplus.view.presenter.Presenter;
 
 /**
  * SignUpFragmentPresenter
@@ -22,10 +21,9 @@ import kr.co.zumo.app.lifeplus.view.presenter.Presenter;
  * @history 민효동   [2018. 9. 28.]   [최초 작성]
  * @since 2018. 9. 28.
  */
-public class SignUpStartPresenter extends Presenter<SignUpStartModel, ISignUpStartView> {
+public class SignUpStartPresenter extends SignUpBasePresenter<SignUpStartModel, ISignUpStartView> {
 
   private DoubleChecker doubleChecker;
-  private boolean isOnboardingStarted;
 
   public SignUpStartPresenter(SignUpStartModel model, ISignUpStartView view) {
     super(model, view);
@@ -35,10 +33,6 @@ public class SignUpStartPresenter extends Presenter<SignUpStartModel, ISignUpSta
     this.model.requestBanners();
   }
 
-  public void setOnBoardingStart(){
-    isOnboardingStarted = true;
-  }
-
   @Override
   protected void startInternal() {
     getHelper(ActionBarHelper.class).setProgress(8); // 26/360
@@ -71,10 +65,11 @@ public class SignUpStartPresenter extends Presenter<SignUpStartModel, ISignUpSta
   @Override
   protected void createViewInternal() {
   }
+
   @Override
   protected void destroyInternal() {
 
-    if(null != doubleChecker) {
+    if (null != doubleChecker) {
       doubleChecker.dispose();
       doubleChecker = null;
     }
@@ -95,11 +90,7 @@ public class SignUpStartPresenter extends Presenter<SignUpStartModel, ISignUpSta
 
   @Override
   public boolean onBackPressed() {
-    if(isOnboardingStarted){
-      home();
-    }else{
-      back(ScreenID.MAIN);
-    }
+    backOrHome();
     return true;
   }
 
@@ -124,7 +115,7 @@ public class SignUpStartPresenter extends Presenter<SignUpStartModel, ISignUpSta
   }
 
   private void renderAfterReady() {
-      view.drawBanners(getBannerItems());
+    view.drawBanners(getBannerItems());
   }
 
   /**