瀏覽代碼

[MY][New] 마이코인 메인 페이지 구현

Hasemi 7 年之前
父節點
當前提交
1939c85f7c

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

@@ -42,7 +42,7 @@ public class ScreenID {
   public static final int MEMBER_BLOCK = 22;
   public static final int SIGN_UP_FROM_ON_BOARDING = 23;
   public static final int BUCKET = 24;
-  public static final int MY_COIN = 25;
+  public static final int MY_COIN_DETAIL = 25;
   public static final int ALL_MENU = 26;
   public static final int MY_BUCKET = 27;
   public static final int ADD_MY_BUCKET = 28;
@@ -65,7 +65,7 @@ public class ScreenID {
     MAIN, SETTING, FAQ, NETWORK_ERROR, PIN, PIN_RESET, SIGN_UP_FROM_ZUMO, ON_BOARDING, PERMISSION_INFO,
     SIGN_UP_START, SIGN_UP_MOBILE_AUTHORIZATION, SIGN_UP_ALREADY_MEMBER, SIGN_UP_NEED_FOR_30DAYS, SIGN_UP_PIN, SIGN_UP_AGREE,
     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, ALL_MENU, MY_BUCKET, ADD_MY_BUCKET, FAQ_WRITE ,BUCKET_HASH_TAG , FIRST_CATEGORY, SECOND_CATEGORY ,THIRD_CATEGORY,
+    BUCKET, MY_COIN_DETAIL, ALL_MENU, MY_BUCKET, ADD_MY_BUCKET, FAQ_WRITE ,BUCKET_HASH_TAG , FIRST_CATEGORY, SECOND_CATEGORY ,THIRD_CATEGORY,
     FOURTH_CATEGORY, FIFTH_CATEGORY, NOTIFICATION, SETTING_CODE, MY_MAIN, BOOK_MARK_DEFAULT, BOOK_MARK_LIST , MY_COIN_MAIN
 
   })

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/view/Event.java

@@ -63,7 +63,7 @@ public class Event {
   public static final int START = 35;
   public static final int SETTING = 36;
   public static final int BUCKET = 37;
-  public static final int MY_COIN = 38;
+  public static final int MY_COIN_DETAIL = 38;
   public static final int MY = 39;
   public static final int TOGGLE = 40;
   public static final int MY_BUCKET = 41;
@@ -91,7 +91,7 @@ public class Event {
     NONE, CLICK, BACK, SIGN_UP, LOGIN, CHECK, UNCHECK, JOINED, TUTORIAL_LEFT, TUTORIAL_RIGHT,
     RETRY, INPUT_PIN, NETWORK_CONNECTED, CHANGED, INIT, DETAIL, ERROR, UNLOCK, RESET,
     SUCCESS, FAIL, CANCEL, EMAIL_CLICK, SPECIAL_CODE_CLICK, CONFIRM, RESULT, FAQ, DELETE,
-    COMPLETED, TUTORIAL_END, EXIT, START, SETTING, BUCKET, MY_COIN, MY, TOGGLE, MY_BUCKET,
+    COMPLETED, TUTORIAL_END, EXIT, START, SETTING, BUCKET, MY_COIN_DETAIL, MY, TOGGLE, MY_BUCKET,
     ACTION_BAR_HOME, ACTION_BAR_NOTIFICATION, ACTION_BAR_SETTING, ACTION_BAR_CLOSE, ACTION_BAR_BACK,
     ACTION_BAR_SEARCH, ACTION_BAR_MENU, ACTION_BAR_TITLE, FIRST_CATEGORY, SECOND_CATEGORY, THIRD_CATEGORY, FOURTH_CATEGORY, FIFTH_CATEGORY,
     SWITCH,BOOK_MARK_DEFAULT, BOOK_MARK_LIST, ADD, MY_COIN_MAIN ,

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

@@ -26,7 +26,7 @@ import kr.co.zumo.app.lifeplus.view.screen.my.bucketlist.AddMyBucketListFragment
 import kr.co.zumo.app.lifeplus.view.screen.my.bucketlist.BucketListFragment;
 import kr.co.zumo.app.lifeplus.view.screen.my.bucketlist.MyBucketListFragment;
 import kr.co.zumo.app.lifeplus.view.screen.my.bucketlist.MyBucketListRelatedTagFragment;
-import kr.co.zumo.app.lifeplus.view.screen.my.coin.MyCoinFragment;
+import kr.co.zumo.app.lifeplus.view.screen.my.coin.MyCoinDetailFragment;
 import kr.co.zumo.app.lifeplus.view.screen.my.coin.MyCoinMainFragment;
 import kr.co.zumo.app.lifeplus.view.screen.my.main.MyMainFragment;
 import kr.co.zumo.app.lifeplus.view.screen.notification.NotiFragment;
@@ -127,8 +127,8 @@ public class BasicFragmentFactory extends FragmentFactory {
       case ScreenID.BUCKET:
         fragment = new BucketListFragment();
         break;
-      case ScreenID.MY_COIN:
-        fragment = new MyCoinFragment();
+      case ScreenID.MY_COIN_DETAIL:
+        fragment = new MyCoinDetailFragment();
         break;
       case ScreenID.ALL_MENU:
         fragment = new AllMenuFragment();

+ 4 - 4
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/my/coin/MyCoinFragment.java

@@ -34,7 +34,7 @@ import kr.co.zumo.app.lifeplus.view.screen.setting.SettingExpandableListViewDeco
  * @history 하세미   [2018-10-17]   [최초 작성]
  * @since 2018-10-17
  */
-public class MyCoinFragment extends FragmentBase<MyCoinPresenter> implements IMyCoinView {
+public class MyCoinDetailFragment extends FragmentBase<MyCoinDetailPresenter> implements IMyCoinView {
 
   private RecyclerView recyclerViewCoinList;
   private LinearLayout layoutFilterContents;
@@ -47,7 +47,7 @@ public class MyCoinFragment extends FragmentBase<MyCoinPresenter> implements IMy
   @Nullable
   @Override
   protected View onAfterCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
-    return inflater.inflate(R.layout.fragment_my_coin, container, false);
+    return inflater.inflate(R.layout.fragment_my_coin_detail, container, false);
   }
 
   @Override
@@ -88,8 +88,8 @@ public class MyCoinFragment extends FragmentBase<MyCoinPresenter> implements IMy
   }
 
   @Override
-  protected MyCoinPresenter definePresenter() {
-    return new MyCoinPresenter(getModel(MyCoinModel.class), this);
+  protected MyCoinDetailPresenter definePresenter() {
+    return new MyCoinDetailPresenter(getModel(MyCoinModel.class), this);
   }
 
   @Override

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/my/coin/MyCoinPresenter.java

@@ -16,9 +16,9 @@ import kr.co.zumo.app.lifeplus.view.presenter.Presenter;
  * @history 하세미   [2018-10-17]   [최초 작성]
  * @since 2018-10-17
  */
-public class MyCoinPresenter extends Presenter<MyCoinModel, IMyCoinView> {
+public class MyCoinDetailPresenter extends Presenter<MyCoinModel, IMyCoinView> {
 
-  public MyCoinPresenter(MyCoinModel model, IMyCoinView view) {
+  public MyCoinDetailPresenter(MyCoinModel model, IMyCoinView view) {
     super(model, view);
   }
 

+ 33 - 3
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/my/coin/MyCoinMainFragment.java

@@ -6,11 +6,19 @@ import android.support.annotation.Nullable;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import java.util.ArrayList;
+import java.util.List;
 
 import kr.co.zumo.app.R;
+import kr.co.zumo.app.lifeplus.bean.TextImageBean;
+import kr.co.zumo.app.lifeplus.manager.ActionBarManager;
 import kr.co.zumo.app.lifeplus.model.BlankModel;
+import kr.co.zumo.app.lifeplus.view.Event;
+import kr.co.zumo.app.lifeplus.view.custom.main.banner.MainBannerView;
 import kr.co.zumo.app.lifeplus.view.screen.FragmentBase;
-import kr.co.zumo.app.lifeplus.view.screen.my.main.MyMainPresenter;
 
 /**
  * MyCoinMainFragment
@@ -23,6 +31,11 @@ import kr.co.zumo.app.lifeplus.view.screen.my.main.MyMainPresenter;
  * @since 2018-10-26
  */
 public class MyCoinMainFragment extends FragmentBase<MyCoinMainPresenter> {
+  private TextView textViewMyCoinDetail;
+  private ImageView imageViewArrowMyCoinDetail;
+  private MainBannerView mainBannerViewCoin;
+  private List<TextImageBean> imageBeanList;
+
   @Override
   protected View onAfterCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
     return inflater.inflate(R.layout.fragment_my_coin_main, container, false);
@@ -30,16 +43,33 @@ public class MyCoinMainFragment extends FragmentBase<MyCoinMainPresenter> {
 
   @Override
   protected void onAfterActivityCreated(Bundle savedInstanceState) {
-
+    textViewMyCoinDetail = findViewById(R.id.text_view_my_coin_detail);
+    imageViewArrowMyCoinDetail = findViewById(R.id.image_view_arrow_my_colin_detail);
+    mainBannerViewCoin = findViewById(R.id.coin_banner_view);
+    doBannerDataSetting();
+    mainBannerViewCoin.init(getActivity(), imageBeanList, 2);
+    textViewMyCoinDetail.setOnClickListener(view -> {presenter.onEvent(new Event.Builder(Event.MY_COIN_DETAIL).build());});
+    imageViewArrowMyCoinDetail.setOnClickListener(view -> {presenter.onEvent(new Event.Builder(Event.MY_COIN_DETAIL).build());});
   }
 
   @Override
   protected void defineActionBar() {
-
+    ActionBarManager.getInstance().begin().title(R.string.my_coin)
+      .menu(actionBar -> presenter.onClickMenu(actionBar))
+      .search(actionBar -> presenter.onClickSearch(actionBar))
+      .back(actionBar -> presenter.onClickBack(actionBar))
+      .scroll()
+      .show();
   }
 
   @Override
   protected MyCoinMainPresenter definePresenter() {
     return new MyCoinMainPresenter(getModel(BlankModel.class), this);
   }
+
+  public void doBannerDataSetting() {
+    imageBeanList = new ArrayList<>();
+    imageBeanList.add(new TextImageBean(R.drawable.img_banner_mycoin));
+    imageBeanList.add(new TextImageBean(R.drawable.img_bestbucket_banner_2));
+  }
 }

+ 7 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/my/coin/MyCoinMainPresenter.java

@@ -57,6 +57,13 @@ public class MyCoinMainPresenter extends Presenter<BlankModel, IView> {
 
   @Override
   protected void onEventInternal(Event event) {
+    switch (event.getEventId()) {
+      case Event.MY_COIN_DETAIL:
+        onCommand(new FragmentBackStackChangeCommand(ScreenID.MY_COIN_DETAIL, ScreenID.DIRECTION_NEXT));
+        break;
+      default:
+        break;
+    }
 
   }
 

+ 1 - 0
app/src/main/res/drawable/faq_text_border.xml

@@ -3,6 +3,7 @@
   <item>
     <shape android:shape="rectangle">
       <stroke android:color="#e5e5e5" android:width="1dp"/>
+      <solid android:color="@color/CFFFFFF"/>
     </shape>
   </item>
 </selector>

+ 6 - 0
app/src/main/res/drawable/icon_arrow_coupon.xml

@@ -0,0 +1,6 @@
+<vector android:height="11dp" android:viewportHeight="42"
+    android:viewportWidth="42" android:width="11dp" xmlns:android="http://schemas.android.com/apk/res/android">
+    <path android:fillColor="#00000000" android:fillType="evenOdd"
+        android:pathData="M14.142,35.284l14.142,-14.142L14.142,7"
+        android:strokeColor="#000" android:strokeWidth="6"/>
+</vector>

+ 4 - 3
app/src/main/res/layout/fragment_my_coin.xml

@@ -5,6 +5,7 @@
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
+  android:layout_marginTop="@dimen/action_bar_height"
   android:orientation="vertical">
 
 
@@ -195,7 +196,7 @@
     android:background="@color/C000000"/>
 
   <ImageView
-    android:id="@+id/image_view_arrow"
+    android:id="@+id/image_view_arrow_my_colin_detail"
     android:layout_width="7dp"
     android:layout_height="7dp"
     android:layout_marginStart="-1.5dp"
@@ -212,8 +213,8 @@
       android:layout_centerVertical="true"
       android:layout_marginStart="0dp"
       android:layout_marginEnd="0dp"
-      android:layout_toStartOf="@+id/image_view_arrow"
-      android:layout_toEndOf="@id/image_view_arrow"
+      android:layout_toStartOf="@+id/image_view_arrow_my_colin_detail"
+      android:layout_toEndOf="@id/image_view_arrow_my_colin_detail"
       android:background="@color/C000000"/>
   </RelativeLayout>
 

+ 308 - 45
app/src/main/res/layout/fragment_my_coin_main.xml

@@ -1,75 +1,338 @@
 <?xml version="1.0" encoding="utf-8"?>
-<android.support.constraint.ConstraintLayout
+<android.support.v4.widget.NestedScrollView
   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:layout_width="match_parent"
-  android:layout_height="match_parent">
+  android:layout_height="match_parent"
+ >
 
   <android.support.constraint.ConstraintLayout
+    android:paddingTop="@dimen/action_bar_height"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:background="@color/CF8F8F8"
-    tools:layout_editor_absoluteX="831dp"
-    tools:layout_editor_absoluteY="16dp">
+    android:layout_height="match_parent">
 
     <android.support.constraint.ConstraintLayout
+      android:id="@+id/first_layout"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
-      android:background="@color/CFFFFFF">
+      android:background="@color/CF8F8F8">
+
+      <android.support.constraint.ConstraintLayout
+        android:id="@+id/second_layout"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="30dp"
+        android:layout_marginTop="25dp"
+        android:layout_marginEnd="30dp"
+        android:layout_marginBottom="25dp"
+        android:background="@drawable/faq_text_border"
+        app:layout_constraintBottom_toBottomOf="@+id/first_layout"
+        app:layout_constraintStart_toStartOf="@+id/first_layout"
+        app:layout_constraintTop_toTopOf="@+id/first_layout">
+
+        <TextView
+          android:id="@+id/text_view_coin_detail"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_marginStart="30dp"
+          android:layout_marginTop="30dp"
+          android:layout_marginEnd="3dp"
+          android:layout_marginBottom="30dp"
+          android:lineSpacingExtra="10sp"
+          android:text="@string/my_coin_detail"
+          android:textColor="@color/C000000"
+          android:textSize="25sp"
+          app:layout_constraintBottom_toBottomOf="parent"
+          app:layout_constraintEnd_toStartOf="@+id/image_view_coin"
+          app:layout_constraintHorizontal_bias="0.5"
+          app:layout_constraintStart_toStartOf="parent"
+          app:layout_constraintTop_toTopOf="parent"/>
+
+        <ImageView
+          android:id="@+id/image_view_coin"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_marginTop="8dp"
+          android:layout_marginBottom="8dp"
+          android:paddingEnd="6dp"
+          app:layout_constraintBottom_toBottomOf="parent"
+          app:layout_constraintEnd_toStartOf="@+id/image_view_pop_up"
+          app:layout_constraintHorizontal_bias="0.5"
+          app:layout_constraintStart_toEndOf="@+id/text_view_coin_detail"
+          app:layout_constraintTop_toTopOf="parent"
+          app:srcCompat="@drawable/icon_coin"/>
+
+        <ImageView
+          android:id="@+id/image_view_pop_up"
+          android:layout_width="14dp"
+          android:layout_height="14dp"
+          android:layout_marginTop="8dp"
+          android:layout_marginBottom="8dp"
+          app:layout_constraintBottom_toBottomOf="parent"
+          app:layout_constraintStart_toEndOf="@+id/image_view_coin"
+          app:layout_constraintTop_toTopOf="parent"
+          app:srcCompat="@drawable/icon_info_popup_btn"/>
+
+        <TextView
+          android:id="@+id/text_view_my_coin_detail"
+          android:layout_width="wrap_content"
+          android:layout_height="20dp"
+          android:layout_marginTop="30dp"
+          android:layout_marginEnd="2dp"
+          android:layout_marginBottom="30dp"
+          android:gravity="end"
+          android:lineSpacingExtra="4sp"
+          android:text="@string/my_coin_detail_go"
+          android:textColor="@color/C666666"
+          android:textSize="12sp"
+          app:layout_constraintBottom_toBottomOf="parent"
+          app:layout_constraintEnd_toStartOf="@+id/image_view_arrow_my_colin_detail"
+          app:layout_constraintTop_toTopOf="parent"/>
+
+        <ImageView
+          android:id="@+id/image_view_arrow_my_colin_detail"
+          android:layout_width="14dp"
+          android:layout_height="14dp"
+          android:layout_marginTop="8dp"
+          android:layout_marginEnd="29dp"
+          android:layout_marginBottom="8dp"
+          app:layout_constraintBottom_toBottomOf="parent"
+          app:layout_constraintEnd_toEndOf="@+id/second_layout"
+          app:layout_constraintTop_toTopOf="parent"
+          app:srcCompat="@drawable/icon_arrow_coin"/>
+      </android.support.constraint.ConstraintLayout>
+
+    </android.support.constraint.ConstraintLayout>
+
+    <TextView
+      android:id="@+id/text_view_buy_text"
+      android:layout_width="wrap_content"
+      android:layout_height="19dp"
+      android:layout_marginStart="24dp"
+      android:layout_marginTop="30dp"
+      android:lineSpacingExtra="6sp"
+      android:text="@string/my_coin_now_buy_it"
+      android:textColor="@color/C333333"
+      android:textSize="15sp"
+      app:layout_constraintStart_toStartOf="parent"
+      app:layout_constraintTop_toBottomOf="@+id/first_layout"
+      />
+
+    <android.support.constraint.ConstraintLayout
+      android:id="@+id/third_layout"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:layout_marginTop="12.5dp"
+      app:layout_constraintTop_toBottomOf="@+id/text_view_buy_text">
+
+      <ImageView
+        android:id="@+id/image_view_coupon_shape"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="25dp"
+        android:layout_marginEnd="25dp"
+        android:scaleType="fitXY"
+        app:layout_constraintEnd_toEndOf="@+id/third_layout"
+        app:layout_constraintStart_toStartOf="@+id/third_layout"
+        app:srcCompat="@drawable/ic_coupon_shape"/>
+
+      <ImageView
+        android:id="@+id/image_view_coupon_thumb1"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="28dp"
+        app:layout_constraintBottom_toBottomOf="@id/image_view_coupon_shape"
+        app:layout_constraintStart_toStartOf="@+id/image_view_coupon_shape"
+        app:layout_constraintTop_toTopOf="@id/image_view_coupon_shape"
+        app:srcCompat="@drawable/img_coupon_thumb_1"
+        />
 
       <TextView
-        android:id="@+id/text_view_coin_detail"
+        android:id="@+id/text_view_store1"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginStart="30dp"
-        android:lineSpacingExtra="10sp"
-        android:text="6,900"
+        android:layout_marginStart="32dp"
+        android:layout_marginTop="20dp"
+        android:layout_marginBottom="4dp"
+        android:lineSpacingExtra="5sp"
+        android:text="@string/my_coin_example_store_1"
+        android:textColor="@color/C999999"
+        android:textSize="11sp"
+        app:layout_constraintBottom_toTopOf="@+id/text_view_product1"
+        app:layout_constraintStart_toEndOf="@+id/image_view_coupon_thumb1"
+        app:layout_constraintTop_toTopOf="@+id/third_layout"
+        />
+
+      <TextView
+        android:id="@+id/text_view_product1"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="31dp"
+        android:layout_marginTop="4dp"
+        android:lineSpacingExtra="5.5sp"
+        android:text="@string/my_coin_example_product_1"
         android:textColor="@color/C000000"
-        android:textSize="25sp"
-        app:layout_constraintEnd_toStartOf="@+id/image_view_coin"
-        app:layout_constraintHorizontal_bias="0.5"
-        app:layout_constraintStart_toStartOf="parent"/>
+        android:textSize="14sp"
+        app:layout_constraintStart_toEndOf="@+id/image_view_coupon_thumb1"
+        app:layout_constraintTop_toBottomOf="@+id/text_view_store1"/>
+
+      <TextView
+        android:id="@+id/text_view_price1"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="31dp"
+        android:layout_marginTop="8dp"
+        android:layout_marginEnd="3dp"
+        android:lineSpacingExtra="6sp"
+        android:text="@string/my_coin_example_price_1"
+        android:textColor="@color/C000000"
+        android:textSize="15sp"
+        app:layout_constraintEnd_toStartOf="@+id/image_view_coin_2"
+        app:layout_constraintStart_toEndOf="@+id/image_view_coupon_thumb1"
+        app:layout_constraintTop_toBottomOf="@+id/text_view_product1"
+        />
 
       <ImageView
-        android:id="@+id/image_view_coin"
-        android:layout_width="14dp"
-        android:layout_height="14dp"
-        app:layout_constraintEnd_toStartOf="@+id/image_view_pop_up"
-        app:layout_constraintHorizontal_bias="0.5"
-        app:layout_constraintStart_toEndOf="@+id/text_view_coin_detail"
+        android:id="@+id/image_view_coin_2"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        app:layout_constraintBottom_toBottomOf="@+id/text_view_price1"
+        app:layout_constraintStart_toEndOf="@+id/text_view_price1"
+        app:layout_constraintTop_toTopOf="@+id/text_view_price1"
         app:srcCompat="@drawable/icon_coin"/>
 
       <ImageView
-        android:id="@+id/image_view_pop_up"
-        android:layout_width="14dp"
-        android:layout_height="14dp"
-        app:layout_constraintEnd_toStartOf="@+id/text_view_detail_show"
-        app:layout_constraintHorizontal_bias="0.5"
-        app:layout_constraintStart_toEndOf="@+id/image_view_coin"
-        app:srcCompat="@drawable/icon_info_popup_btn"/>
+        android:id="@+id/image_view_detail_arrow1"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:padding="14dp"
+        app:layout_constraintBottom_toBottomOf="@id/image_view_coupon_shape"
+        app:layout_constraintEnd_toEndOf="@+id/image_view_coupon_shape"
+        app:layout_constraintTop_toTopOf="@+id/image_view_coupon_shape"
+        app:srcCompat="@drawable/icon_arrow_coupon"/>
+    </android.support.constraint.ConstraintLayout>
+
+    <TextView
+      android:id="@+id/text_view_coin_collect"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_marginStart="25dp"
+      android:layout_marginTop="30dp"
+      android:lineSpacingExtra="6sp"
+      android:text="@string/my_coin_collect_title"
+      android:textColor="@color/C333333"
+      android:textSize="15sp"
+      app:layout_constraintBottom_toTopOf="@+id/fourth_layout"
+      app:layout_constraintStart_toStartOf="parent"
+      app:layout_constraintTop_toBottomOf="@+id/third_layout"
+      />
+
+    <android.support.constraint.ConstraintLayout
+      android:id="@+id/fourth_layout"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:layout_marginTop="12dp"
+      app:layout_constraintTop_toBottomOf="@+id/text_view_coin_collect">
+
+      <ImageView
+        android:id="@+id/image_view_coupon_shape2"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="25dp"
+        android:layout_marginEnd="25dp"
+        android:scaleType="fitXY"
+        app:layout_constraintEnd_toEndOf="@+id/fourth_layout"
+        app:layout_constraintStart_toStartOf="@+id/fourth_layout"
+        app:srcCompat="@drawable/ic_coupon_shape"/>
+
+      <ImageView
+        android:id="@+id/image_view_coupon_thumb_2"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="28dp"
+        app:layout_constraintBottom_toBottomOf="@id/image_view_coupon_shape2"
+        app:layout_constraintStart_toStartOf="@+id/image_view_coupon_shape2"
+        app:layout_constraintTop_toTopOf="@id/image_view_coupon_shape2"
+        app:srcCompat="@drawable/img_coupon_thumb_2"
+        />
 
       <TextView
-        android:id="@+id/text_view_detail_show"
+        android:id="@+id/text_view_store2"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:gravity="end"
-        android:lineSpacingExtra="4sp"
-        android:text="자세히보기"
-        android:textColor="@color/C666666"
-        android:textSize="12sp"
-        app:layout_constraintEnd_toStartOf="@+id/image_view_arrow"
-        app:layout_constraintHorizontal_bias="0.5"
-        app:layout_constraintStart_toEndOf="@+id/image_view_pop_up"/>
+        android:layout_marginStart="32dp"
+        android:layout_marginTop="20dp"
+        android:layout_marginBottom="4dp"
+        android:lineSpacingExtra="5sp"
+        android:text="@string/my_coin_example_store_2"
+        android:textColor="@color/C999999"
+        android:textSize="11sp"
+        app:layout_constraintBottom_toTopOf="@+id/text_view_coupon_title"
+        app:layout_constraintStart_toEndOf="@+id/image_view_coupon_thumb_2"
+        app:layout_constraintTop_toTopOf="@+id/fourth_layout"
+        app:layout_constraintVertical_bias="0.727"/>
+
+      <TextView
+        android:id="@+id/text_view_coupon_title"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="31dp"
+        android:layout_marginTop="4dp"
+        android:lineSpacingExtra="6sp"
+        android:text="@string/my_coin_example_product_2"
+        android:textColor="@color/C000000"
+        android:textSize="14sp"
+        app:layout_constraintStart_toEndOf="@+id/image_view_coupon_thumb_2"
+        app:layout_constraintTop_toBottomOf="@+id/text_view_store2"
+        tools:layout_editor_absoluteY="41dp"/>
+
+      <TextView
+        android:id="@+id/text_view_price2"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="31dp"
+        android:layout_marginTop="8dp"
+        android:layout_marginEnd="3dp"
+        android:lineSpacingExtra="6sp"
+        android:text="@string/my_coin_example_price_2"
+        android:textColor="@color/C000000"
+        android:textSize="15sp"
+        app:layout_constraintEnd_toStartOf="@+id/image_view_coin_3"
+        app:layout_constraintStart_toEndOf="@+id/image_view_coupon_thumb_2"
+        app:layout_constraintTop_toBottomOf="@+id/text_view_coupon_title"
+        tools:layout_editor_absoluteY="89dp"/>
 
       <ImageView
-        android:id="@+id/image_view_arrow"
-        android:layout_width="14dp"
-        android:layout_height="14dp"
-        app:layout_constraintEnd_toStartOf="@+id/text_view_coin_detail"
-        app:layout_constraintHorizontal_bias="0.5"
-        app:layout_constraintStart_toEndOf="@+id/text_view_detail_show"
-        app:srcCompat="@drawable/icon_detail_arrow"/>
+        android:id="@+id/image_view_coin_3"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        app:layout_constraintBottom_toBottomOf="@+id/text_view_price2"
+        app:layout_constraintStart_toEndOf="@+id/text_view_price2"
+        app:layout_constraintTop_toTopOf="@+id/text_view_price2"
+        app:srcCompat="@drawable/icon_coin"/>
+
+      <ImageView
+        android:id="@+id/image_view_detail_arrow2"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:padding="14dp"
+        app:layout_constraintBottom_toBottomOf="@id/image_view_coupon_shape2"
+        app:layout_constraintEnd_toEndOf="@+id/image_view_coupon_shape2"
+        app:layout_constraintTop_toTopOf="@+id/image_view_coupon_shape2"
+        app:srcCompat="@drawable/icon_arrow_coupon"/>
+
     </android.support.constraint.ConstraintLayout>
+
+    <kr.co.zumo.app.lifeplus.view.custom.main.banner.MainBannerView
+      android:id="@+id/coin_banner_view"
+      android:layout_width="match_parent"
+      android:layout_height="151dp"
+      android:layout_marginTop="45dp"
+      app:layout_constraintTop_toBottomOf="@+id/fourth_layout"
+      app:layout_constraintBottom_toBottomOf="parent"
+      app:layout_constraintEnd_toEndOf="parent"
+      app:layout_constraintStart_toStartOf="parent"/>
+
   </android.support.constraint.ConstraintLayout>
-</android.support.constraint.ConstraintLayout>
+</android.support.v4.widget.NestedScrollView>

+ 13 - 0
app/src/main/res/values/strings.xml

@@ -440,4 +440,17 @@
 
   <string name="book_mark_default_text">9월엔 구월동 추천 스팟 6</string>
   <string name="book_mark_default_text2">서울세계불꽃축제\n티켓증정 이벤트</string>
+
+  <string name="my_coin_detail">6,900</string>
+  <string name="my_coin_detail_go">자세히보기</string>
+  <string name="my_coin_now_buy_it"><b>지금 당장 살 수 있어요!</b></string>
+  <string name="my_coin_example_store_1">투썸플레이스</string>
+  <string name="my_coin_example_product_1">달콤함에 기분업!\n투썸딸기케이크</string>
+  <string name="my_coin_example_price_1">32,000</string>
+  <string name="my_coin_collect_title"><b>조금만 더 모아보세요!</b></string>
+  <string name="my_coin_example_store_2">베스킨라빈스</string>
+  <string name="my_coin_example_product_2">달콤함에 기분업!\n아이스크림 케이크</string>
+  <string name="my_coin_example_price_2">24,000</string>
+
+
 </resources>