Parcourir la source

[LP소개][Common] LP소개 백스택 오류 수정중

Hasemi il y a 7 ans
Parent
commit
a6aabd66e4

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/supervisor/ScreenID.java

@@ -61,7 +61,7 @@ public class ScreenID {
   public static final int MY_COIN_MAIN = 41;
   public static final int MY_COIN_EXTINCT = 42;
   public static final int MY_PURCHASE_HISTORY = 43;
-  public static final int GUIDE = 44;
+  public static final int LIFE_PLUS_INTRODUCTION = 44;
   public static final int LIFE_PLUS_X = 45;
   public static final int SETTING_MEMBER_INFO = 46;
   public static final int MY_MAIN_GUEST = 47;
@@ -93,7 +93,7 @@ public class ScreenID {
     SIGN_UP_COMPLETED, SIGN_UP_UNDER_14_YEARS, REST_MEMBER_START, REST_MEMBER_ACTIVE_COMPLETED, MEMBER_BLOCK, SIGN_UP_FROM_ON_BOARDING,
     BUCKET, MY_COIN_DETAIL, ALL_MENU, MY_BUCKET_LIST, ADD_MY_BUCKET, FAQ_WRITE, BUCKET_DETAIL, FIRST_CATEGORY, SECOND_CATEGORY, THIRD_CATEGORY,
     FOURTH_CATEGORY, FIFTH_CATEGORY, NOTIFICATION, SETTING_CODE, MY_MAIN, BOOK_MARK_DEFAULT, BOOK_MARK_LIST, MY_COIN_MAIN, MY_COIN_EXTINCT, MY_PURCHASE_HISTORY,
-    GUIDE, LIFE_PLUS_X, SETTING_MEMBER_INFO, MY_MAIN_GUEST, COUPON_MALL, ALL_MENU_GUEST, SETTING_MEMBER_QUIT_INFO, MY_FAQ, SETTING_MEMBER_QUIT_REQUEST,
+    LIFE_PLUS_INTRODUCTION, LIFE_PLUS_X, SETTING_MEMBER_INFO, MY_MAIN_GUEST, COUPON_MALL, ALL_MENU_GUEST, SETTING_MEMBER_QUIT_INFO, MY_FAQ, SETTING_MEMBER_QUIT_REQUEST,
     SETTING_MEMBER_QUIT_FINISH, SETTING_TERMS, SETTING_MEMBER_QUIT_FAIL, MAIN_PIN_UNLOCK, PIN_RESET_AUTH, PIN_RESET_INPUT, PIN_RESET_AUTH_FROM_SETTING,
     PIN_RESET_INPUT_FROM_SETTING, PIN_RESET_AUTH_FROM_ALREADY_MEMBER, PIN_RESET_INPUT_FROM_ALREADY_MEMBER, CONTENTS, EVENT, PHONE_NUMBER_RESET, BUCKET_MY_EDIT,
     NETWORK_ERROR_STARTING,

+ 3 - 3
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/factory/BasicFragmentFactory.java

@@ -20,8 +20,8 @@ import kr.co.zumo.app.lifeplus.view.screen.event.EventFragment;
 import kr.co.zumo.app.lifeplus.view.screen.faq.FAQFragment;
 import kr.co.zumo.app.lifeplus.view.screen.faq.FAQWriteFragment;
 import kr.co.zumo.app.lifeplus.view.screen.faq.MyFAQFragment;
-import kr.co.zumo.app.lifeplus.view.screen.guide.GuideFragment;
 import kr.co.zumo.app.lifeplus.view.screen.guide.LifeplusBrandFragment;
+import kr.co.zumo.app.lifeplus.view.screen.guide.LifeplusIntroductionFramgment;
 import kr.co.zumo.app.lifeplus.view.screen.info.PermissionInfoFragment;
 import kr.co.zumo.app.lifeplus.view.screen.main.MainFragment;
 import kr.co.zumo.app.lifeplus.view.screen.main.pin.MainPinUnlockFragment;
@@ -242,8 +242,8 @@ public class BasicFragmentFactory extends FragmentFactory {
       case ScreenID.MY_PURCHASE_HISTORY:
         fragment = new MyPurchaseHistoryFragment();
         break;
-      case ScreenID.GUIDE:
-        fragment = new GuideFragment();
+      case ScreenID.LIFE_PLUS_INTRODUCTION:
+        fragment = new LifeplusIntroductionFramgment();
         break;
       case ScreenID.LIFE_PLUS_X:
         fragment = new LifeplusBrandFragment();

+ 0 - 3
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/guide/GuideFirstViewHolder.java

@@ -6,7 +6,6 @@ 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;
 import kr.co.zumo.app.lifeplus.view.presenter.Presenter;
 
@@ -36,7 +35,6 @@ public class GuideFirstViewHolder extends GuideView {
     imageViewFullImage = itemView.findViewById(R.id.image_view_full_image);
     textViewTitle = itemView.findViewById(R.id.text_view_title);
     textViewContents = itemView.findViewById(R.id.text_view_contents);
-    textViewLifeplusX = itemView.findViewById(R.id.text_view_life_plus_x);
   }
 
   @Override
@@ -45,6 +43,5 @@ public class GuideFirstViewHolder extends GuideView {
     imageViewFullImage.setImageDrawable(itemView.getResources().getDrawable(R.drawable.img_lpguide_1));
     textViewTitle.setText(R.string.life_plus_guide_title_1);
     textViewContents.setText(R.string.life_plus_guide_contents_1);
-    textViewLifeplusX.setOnClickListener(view -> {presenter.onEvent(new Event.Builder(Event.GUIDE).build());});
   }
 }

+ 1 - 6
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/guide/GuideFragment.java

@@ -54,12 +54,7 @@ public class GuideFragment extends FragmentBase<GuidePresenter> {
 
   @Override
   protected void defineActionBar(ActionBarHelper actionBarHelper) {
-    actionBarHelper.begin().title(R.string.life_plus_guide)
-      .menu(actionBar -> presenter.onNavigationClickMenu(actionBar))
-      .search(actionBar -> presenter.onNavigationClickSearch(actionBar))
-      .back(actionBar -> presenter.onNavigationClickBack(actionBar))
-      .scroll()
-      .show();
+
   }
 
   @Override

+ 3 - 8
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/guide/LifeplusBrandAdapter.java

@@ -22,7 +22,7 @@ import kr.co.zumo.app.lifeplus.view.presenter.Presenter;
  */
 public class LifeplusBrandAdapter extends RecyclerView.Adapter<LifeplusBrandView> {
 
-  private static final int LIST_COUNT = 9;
+  private static final int LIST_COUNT = 8;
   private static final int HEADER = 0;
   private static final int VIDEO_VIEW = 1;
   private static final int DIVIDER = 2;
@@ -48,9 +48,6 @@ public class LifeplusBrandAdapter extends RecyclerView.Adapter<LifeplusBrandView
   public LifeplusBrandView onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
     View view;
     switch (viewType) {
-      case HEADER:
-        view = inflater.inflate(R.layout.life_plus_brand_header, parent, false);
-        return new LifeplusBrandHeaderViewHolder(view, context, presenter);
       case VIDEO_VIEW:
         view = inflater.inflate(R.layout.life_plus_brand_video_view, parent, false);
         return new LifeplusBrandVideoViewHolder(view, context);
@@ -84,13 +81,11 @@ public class LifeplusBrandAdapter extends RecyclerView.Adapter<LifeplusBrandView
   public int getItemViewType(int position) {
     switch (position) {
       case 0:
-        return HEADER;
       case 1:
-      case 2:
         return VIDEO_VIEW;
-      case 3:
+      case 2:
         return DIVIDER;
-      case 4:
+      case 3:
         return TEXT_VIEW;
       default:
         return IMAGE_AND_TEXT_VIEW;

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

@@ -44,12 +44,6 @@ public class LifeplusBrandFragment extends FragmentBase<LifeplusBrandPresenter>
 
   @Override
   protected void defineActionBar(ActionBarHelper actionBarHelper) {
-    actionBarHelper.begin().title(R.string.life_plus_guide)
-      .menu(actionBar -> presenter.onNavigationClickMenu(actionBar))
-      .search(actionBar -> presenter.onNavigationClickSearch(actionBar))
-      .back(actionBar -> presenter.onNavigationClickBack(actionBar))
-      .scroll()
-      .show();
   }
 
   @Override

+ 1 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/guide/LifeplusBrandPresenter.java

@@ -58,7 +58,7 @@ public class LifeplusBrandPresenter extends Presenter<BlankModel, IView> {
   protected void onEventInternal(Event event) {
     switch (event.getEventId()) {
       case Event.GUIDE:
-        go(ScreenID.GUIDE, ScreenID.DIRECTION_NONE);
+        go(ScreenID.LIFE_PLUS_INTRODUCTION, ScreenID.DIRECTION_NONE);
         break;
       default:
         break;

+ 84 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/guide/LifeplusIntroductionFramgment.java

@@ -0,0 +1,84 @@
+package kr.co.zumo.app.lifeplus.view.screen.guide;
+
+import android.os.Bundle;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.design.widget.TabLayout;
+import android.support.v4.view.ViewPager;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import kr.co.zumo.app.R;
+import kr.co.zumo.app.lifeplus.helper.ActionBarHelper;
+import kr.co.zumo.app.lifeplus.model.BlankModel;
+import kr.co.zumo.app.lifeplus.view.screen.FragmentBase;
+
+/**
+ * LifeplusIntroductionFramgment
+ * <pre>
+ * </pre>
+ *
+ * @author 하세미
+ * @version 1.0
+ * @history 하세미   [2018-11-16]   [최초 작성]
+ * @since 2018-11-16
+ */
+public class LifeplusIntroductionFramgment extends FragmentBase<LifeplusIntroductionPresenter> {
+
+  private TabLayout tabLayoutIntroduction;
+  private ViewPager viewPagerIntroduction;
+  private LifeplusIntroductionPagerAdapter pagerAdapter;
+
+  private static final String APP_GUIDE = "App 이용가이드";
+  private static final String LIFE_PLUS_BRAND = "Lifeplus 브랜드";
+
+
+  @Override
+  protected View onAfterCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
+    return inflater.inflate(R.layout.fragment_life_plus_introduction, container, false);
+  }
+
+  @Override
+  protected void onAfterActivityCreated(Bundle savedInstanceState) {
+    tabLayoutIntroduction = findViewById(R.id.life_plus_tab_layout);
+    tabLayoutIntroduction.setTabGravity(TabLayout.GRAVITY_FILL);
+    viewPagerIntroduction = findViewById(R.id.life_plus_view_pager);
+   // tabLayoutIntroduction.setAnimation(Animation.ABSOLUTE);
+
+    String[] tabs = {APP_GUIDE, LIFE_PLUS_BRAND};
+    pagerAdapter = new LifeplusIntroductionPagerAdapter(getChildFragmentManager(), tabs);
+    tabLayoutIntroduction.setupWithViewPager(viewPagerIntroduction, true);
+    viewPagerIntroduction.setAdapter(pagerAdapter);
+
+  }
+
+  @Override
+  protected void defineActionBar(ActionBarHelper actionBarHelper) {
+    actionBarHelper.begin().title(R.string.life_plus_guide)
+      .menu(actionBar -> presenter.onNavigationClickMenu(actionBar))
+      .search(actionBar -> presenter.onNavigationClickSearch(actionBar))
+      .back(actionBar -> presenter.onNavigationClickBack(actionBar))
+      .show();
+  }
+
+  @Override
+  protected LifeplusIntroductionPresenter definePresenter() {
+    return new LifeplusIntroductionPresenter(getModel(BlankModel.class), this);
+  }
+
+  @Override
+  protected void onAfterDestroyView() {
+
+  }
+
+  @Override
+  protected void onAfterDestroy() {
+
+  }
+
+  @Override
+  protected boolean isSkipScreenWhenBack() {
+    return false;
+  }
+}

+ 53 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/guide/LifeplusIntroductionPagerAdapter.java

@@ -0,0 +1,53 @@
+package kr.co.zumo.app.lifeplus.view.screen.guide;
+
+import android.support.annotation.Nullable;
+import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentManager;
+import android.support.v4.app.FragmentStatePagerAdapter;
+
+/**
+ * LifeplusIntroductionPagerAdapter
+ * <pre>
+ * </pre>
+ *
+ * @author 하세미
+ * @version 1.0
+ * @history 하세미   [2018-11-16]   [최초 작성]
+ * @since 2018-11-16
+ */
+public class LifeplusIntroductionPagerAdapter extends FragmentStatePagerAdapter {
+
+  private String[] tabs;
+  private static final int PAGE_COUNT = 2;
+
+  public LifeplusIntroductionPagerAdapter(FragmentManager fm, String[] tabs) {
+    super(fm);
+    this.tabs = tabs;
+  }
+
+  @Override
+  public Fragment getItem(int position) {
+    switch (position) {
+      case 0:
+        GuideFragment guideFragment = new GuideFragment();
+        return guideFragment;
+      case 1:
+        LifeplusBrandFragment lifeplusBrandFragment = new LifeplusBrandFragment();
+        return lifeplusBrandFragment;
+      default:
+        break;
+    }
+    return null;
+  }
+
+  @Override
+  public int getCount() {
+    return PAGE_COUNT;
+  }
+
+  @Nullable
+  @Override
+  public CharSequence getPageTitle(int position) {
+    return tabs[position];
+  }
+}

+ 69 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/guide/LifeplusIntroductionPresenter.java

@@ -0,0 +1,69 @@
+package kr.co.zumo.app.lifeplus.view.screen.guide;
+
+import kr.co.zumo.app.lifeplus.model.BlankModel;
+import kr.co.zumo.app.lifeplus.view.Event;
+import kr.co.zumo.app.lifeplus.view.IView;
+import kr.co.zumo.app.lifeplus.view.presenter.Presenter;
+
+/**
+ * LifeplusIntroductionPresenter
+ * <pre>
+ * </pre>
+ *
+ * @author 하세미
+ * @version 1.0
+ * @history 하세미   [2018-11-16]   [최초 작성]
+ * @since 2018-11-16
+ */
+public class LifeplusIntroductionPresenter extends Presenter<BlankModel, IView> {
+
+
+  public LifeplusIntroductionPresenter(BlankModel model, IView view) {
+    super(model, view);
+  }
+
+  @Override
+  protected void destroyInternal() {
+
+  }
+
+  @Override
+  protected void startInternal() {
+
+  }
+
+  @Override
+  protected void stopInternal() {
+
+  }
+
+  @Override
+  protected void resumeInternal() {
+
+  }
+
+  @Override
+  protected void pauseInternal() {
+
+  }
+
+  @Override
+  public boolean onBackPressed() {
+    return false;
+  }
+
+  @Override
+  protected void onEventInternal(Event event) {
+
+  }
+
+  @Override
+  public void onScreenReady() {
+
+  }
+
+  @Override
+  public void onResult(Event event) {
+
+  }
+}

+ 1 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/menu/AllMenuPresenter.java

@@ -78,7 +78,7 @@ public class AllMenuPresenter extends Presenter<AllMenuModel, IView> {
         go(ScreenID.FAQ);
         break;
       case Event.GUIDE:
-        go(ScreenID.GUIDE);
+        go(ScreenID.LIFE_PLUS_INTRODUCTION);
         break;
       case Event.COUPON_MALL:
         go(ScreenID.COUPON_MALL);

+ 3 - 74
app/src/main/res/layout/app_guide_first_view.xml

@@ -10,84 +10,13 @@
   <ImageView
     android:id="@+id/image_view_full_image"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
+    android:layout_height="508dp"
     android:scaleType="centerCrop"
     android:src="@drawable/img_lpguide_1"
-    app:layout_constraintBottom_toBottomOf="parent"
-    app:layout_constraintTop_toBottomOf="@+id/first_layout"
+    app:layout_constraintTop_toTopOf="parent"
     />
 
-  <android.support.constraint.ConstraintLayout
-    android:id="@+id/first_layout"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    app:layout_constraintEnd_toEndOf="parent"
-    app:layout_constraintHorizontal_bias="0.0"
-    app:layout_constraintStart_toStartOf="parent"
-    android:layout_marginTop="@dimen/action_bar_height"
-    app:layout_constraintTop_toTopOf="parent">
-
-    <TextView
-      android:id="@+id/text_view_life_plus_x"
-      android:layout_width="wrap_content"
-      android:layout_height="wrap_content"
-      android:gravity="center_horizontal"
-      android:lineSpacingExtra="6sp"
-      android:padding="10dp"
-      android:text="@string/life_plus_brand"
-      android:textColor="@color/C000000"
-      android:textSize="14sp"
-      app:layout_constraintEnd_toEndOf="parent"
-      app:layout_constraintHorizontal_bias="0.5"
-      app:layout_constraintStart_toEndOf="@+id/text_view_app_guide"/>
-
-    <TextView
-      android:id="@+id/text_view_app_guide"
-      android:layout_width="wrap_content"
-      android:layout_height="wrap_content"
-      android:gravity="center_horizontal"
-      android:lineSpacingExtra="6sp"
-      android:padding="10dp"
-      android:text="@string/life_plus_app_guide"
-      android:textColor="@color/C000000"
-      android:textSize="14sp"
-      app:layout_constraintEnd_toStartOf="@+id/text_view_life_plus_x"
-      app:layout_constraintHorizontal_bias="0.5"
-      app:layout_constraintStart_toStartOf="parent"/>
-  </android.support.constraint.ConstraintLayout>
-
-  <android.support.constraint.ConstraintLayout
-    android:id="@+id/second_layout"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:layout_marginStart="25dp"
-    android:layout_marginTop="6dp"
-    android:layout_marginEnd="25dp"
-    android:orientation="horizontal"
-    app:layout_constraintEnd_toEndOf="parent"
-    app:layout_constraintStart_toStartOf="parent"
-    app:layout_constraintTop_toBottomOf="@+id/first_layout">
-
-
-    <View
-      android:id="@+id/divider1"
-      android:layout_width="0dp"
-      android:layout_height="3dp"
-      android:background="@color/C000000"
-      app:layout_constraintEnd_toStartOf="@+id/divider2"
-      app:layout_constraintHorizontal_weight="1"
-      app:layout_constraintStart_toStartOf="parent"/>
-
-    <View
-      android:id="@+id/divider2"
-      android:layout_width="0dp"
-      android:layout_height="3dp"
-      android:background="@color/CE5E5E5"
-      app:layout_constraintEnd_toEndOf="parent"
-      app:layout_constraintHorizontal_weight="1"
-      app:layout_constraintStart_toEndOf="@+id/divider1"/>
 
-  </android.support.constraint.ConstraintLayout>
 
   <TextView
     android:id="@+id/text_view_title"
@@ -100,7 +29,7 @@
     android:textSize="18sp"
     app:layout_constraintEnd_toEndOf="parent"
     app:layout_constraintStart_toStartOf="parent"
-    app:layout_constraintTop_toBottomOf="@+id/second_layout"
+    app:layout_constraintTop_toTopOf="parent"
     tools:text="@string/life_plus_guide_title_1"/>
 
   <TextView

+ 36 - 0
app/src/main/res/layout/fragment_life_plus_introduction.xml

@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout
+  xmlns:android="http://schemas.android.com/apk/res/android"
+  xmlns:app="http://schemas.android.com/apk/res-auto"
+  xmlns:tools="http://schemas.android.com/tools"
+  android:id="@+id/main_content"
+  android:layout_width="match_parent"
+  android:layout_height="match_parent"
+  android:background="@color/CFFFFFF"
+  android:orientation="vertical">
+
+  <android.support.design.widget.TabLayout
+    android:id="@+id/life_plus_tab_layout"
+    android:layout_width="match_parent"
+    android:layout_height="55dp"
+    android:layout_marginStart="25dp"
+    android:layout_marginEnd="25dp"
+    android:background="@color/CFFFFFF"
+    app:tabBackground="@drawable/tab_indicator"
+    app:tabGravity="center"
+    app:tabIndicatorColor="@color/C000000"
+    app:tabMode="fixed"/>
+
+  <RelativeLayout
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+    <android.support.v4.view.ViewPager
+      android:id="@+id/life_plus_view_pager"
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"/>
+
+  </RelativeLayout>
+
+
+</LinearLayout>