ソースを参照

[카테고리메인][Common] 여행어디가지 재구현

Hasemi 7 年 前
コミット
5b66fb75d2

+ 4 - 4
app/src/main/java/kr/co/zumo/app/lifeplus/view/custom/auth/IMobileAuthContract.java

@@ -32,7 +32,7 @@ public interface IMobileAuthContract {
     void doHideKeyBoard();
 
     /**
-     * clear validation name textView
+     * clear validation name textView1
      */
     void doClearNameValidationTextView();
 
@@ -44,7 +44,7 @@ public interface IMobileAuthContract {
     void doNameValidationMessage(int StringId);
 
     /**
-     * clear validation birthDate textView
+     * clear validation birthDate textView1
      */
     void doClearBirthDateValidationTextView();
 
@@ -54,7 +54,7 @@ public interface IMobileAuthContract {
     void doBirthDateValidationMessage(int StringId);
 
     /**
-     * clear validation Phone Number textView
+     * clear validation Phone Number textView1
      */
     void doClearPhoneNumberValidationTextView();
 
@@ -93,7 +93,7 @@ public interface IMobileAuthContract {
     void doAuthorizedNumberValidationMessage(@StringRes int stringId);
 
     /**
-     * clear validation Authorized Number textView
+     * clear validation Authorized Number textView1
      */
     void doClearAuthorizedNumberValidationTextView();
 

+ 3 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type2/SecondCategoryMainFullImageItemViewHolder.java

@@ -12,9 +12,10 @@ import android.view.View;
  * @history 하세미   [2018-10-24]   [최초 작성]
  * @since 2018-10-24
  */
-public class SecondCategoryMainFullImageItemViewHolder extends SecondCategoryMainHolder {
+public class SecondCategoryFirstItemViewHolder extends SecondCategoryMainHolder {
 
-  public SecondCategoryMainFullImageItemViewHolder(View itemView) {
+  public SecondCategoryFirstItemViewHolder(View itemView) {
     super(itemView);
   }
+
 }

+ 20 - 13
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type2/SecondCategoryMainAdapter.java

@@ -27,8 +27,9 @@ import kr.co.zumo.app.lifeplus.view.screen.category.CategoryMainViewHolder;
  */
 public class SecondCategoryMainAdapter extends RecyclerView.Adapter<CategoryMainViewHolder> {
 
-  public static final int FULL_IMAGE = 0;
-  public static final int DEFAULT_IMAGE = 1;
+  public static final int FIRST_ROW = 0;
+  public static final int SECOND_ROW = 1;
+  public static final int THIRD_ROW = 2;
 
   private Context context;
   private LayoutInflater inflater;
@@ -51,12 +52,15 @@ public class SecondCategoryMainAdapter extends RecyclerView.Adapter<CategoryMain
     View view;
 
     switch (viewType) {
-      case FULL_IMAGE:
-        view = inflater.inflate(R.layout.main_second_category_full_image_view, parent, false);
-        return new SecondCategoryMainFullImageItemViewHolder(view);
-      case DEFAULT_IMAGE:
-        view = inflater.inflate(R.layout.main_second_category_default_image_view, parent, false);
-        return new SecondCategoryMainDefaultImageItemViewHolder(view);
+      case FIRST_ROW:
+        view = inflater.inflate(R.layout.main_second_category_first_row, parent, false);
+        return new SecondCategoryFirstItemViewHolder(view);
+      case SECOND_ROW:
+        view = inflater.inflate(R.layout.main_second_category_second_row, parent, false);
+        return new SecondCategorySecondItemViewHolder(view);
+      case THIRD_ROW:
+        view = inflater.inflate(R.layout.main_second_category_third_row, parent, false);
+        return new SecondCategoryThirdItemViewHolder(view);
       default:
         break;
 
@@ -104,14 +108,17 @@ public class SecondCategoryMainAdapter extends RecyclerView.Adapter<CategoryMain
 
   @Override
   public int getItemViewType(int position) {
-    position = position % 9;
+    position = position % 3;
     switch (position) {
       case 0:
-        /* falls through */
-      case 4:
-        return FULL_IMAGE;
+        return FIRST_ROW;
+      case 1:
+        return SECOND_ROW;
+      case 2:
+        return THIRD_ROW;
       default:
-        return DEFAULT_IMAGE;
+        break;
     }
+    return 0;
   }
 }

+ 11 - 14
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type2/SecondCategoryMainFragment.java

@@ -1,8 +1,10 @@
 package kr.co.zumo.app.lifeplus.view.screen.category.type2;
 
+import android.graphics.Rect;
 import android.os.Bundle;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -17,13 +19,13 @@ import kr.co.zumo.app.lifeplus.bean.api.CategoryBannerBean;
 import kr.co.zumo.app.lifeplus.bean.api.CategoryContentsBean;
 import kr.co.zumo.app.lifeplus.bean.api.CategoryRecommendBean;
 import kr.co.zumo.app.lifeplus.helper.ActionBarHelper;
+import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.Event;
 import kr.co.zumo.app.lifeplus.view.custom.main.series.IMainSeriesContract;
 import kr.co.zumo.app.lifeplus.view.custom.main.series.MainSeriesPresenter;
 import kr.co.zumo.app.lifeplus.view.custom.main.series.MainSeriesView;
 import kr.co.zumo.app.lifeplus.view.screen.FragmentBase;
 import kr.co.zumo.app.lifeplus.view.screen.category.ISecondCategoryMainView;
-import kr.co.zumo.app.lifeplus.view.screen.category.SpannedGridLayoutManager;
 
 
 /**
@@ -80,7 +82,7 @@ public class SecondCategoryMainFragment extends FragmentBase<SecondCategoryMainP
 
   @Override
   protected void onAfterDestroy() {
-    if(null != spinnerOrder) {
+    if (null != spinnerOrder) {
       spinnerOrder.setOnItemSelectedListener(null);
       spinnerOrder = null;
     }
@@ -114,18 +116,13 @@ public class SecondCategoryMainFragment extends FragmentBase<SecondCategoryMainP
       presenter.onEvent(event);
     });
 
-    recyclerViewSecondCategoryMain.setLayoutManager(new SpannedGridLayoutManager(
-      position -> {
-        switch (secondCategoryMainAdapter.getItemViewType(position)) {
-          case SecondCategoryMainAdapter.DEFAULT_IMAGE:
-            return new SpannedGridLayoutManager.SpanInfo(1, 1);
-          case SecondCategoryMainAdapter.FULL_IMAGE:
-            return new SpannedGridLayoutManager.SpanInfo(2, 2);
-          default:
-            return new SpannedGridLayoutManager.SpanInfo(1, 1);
-        }
-      }, 3, 1f));
-
+    recyclerViewSecondCategoryMain.addItemDecoration(new RecyclerView.ItemDecoration() {
+      @Override
+      public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
+        outRect.bottom = ResourceUtil.dpToPx(7);
+      }
+    });
+    recyclerViewSecondCategoryMain.setLayoutManager(new LinearLayoutManager(getActivity(), LinearLayoutManager.VERTICAL, false));
     recyclerViewSecondCategoryMain.setAdapter(secondCategoryMainAdapter);
 
     viewFilter.setOnClickListener(view -> presenter.onEvent(new Event.Builder(Event.FILTER).build()));

+ 51 - 21
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type2/SecondCategoryMainHolder.java

@@ -1,8 +1,6 @@
 package kr.co.zumo.app.lifeplus.view.screen.category.type2;
 
-import android.support.v7.widget.GridLayoutManager;
 import android.view.View;
-import android.view.ViewGroup;
 import android.widget.ImageView;
 import android.widget.TextView;
 
@@ -13,7 +11,6 @@ import java.util.List;
 import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.bean.api.CategoryContentsBean;
 import kr.co.zumo.app.lifeplus.bean.api.TagBean;
-import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.util.StringUtil;
 import kr.co.zumo.app.lifeplus.view.Event;
 import kr.co.zumo.app.lifeplus.view.screen.category.CategoryMainViewHolder;
@@ -30,31 +27,37 @@ import kr.co.zumo.app.lifeplus.view.screen.category.CategoryMainViewHolder;
  */
 public abstract class SecondCategoryMainHolder extends CategoryMainViewHolder<CategoryContentsBean> {
 
-  protected ImageView imageView;
-  protected TextView textView;
+  protected ImageView imageView1;
+  protected ImageView imageView2;
+  protected ImageView imageView3;
+  protected TextView textView1;
+  protected TextView textView2;
+  protected TextView textView3;
 
   public SecondCategoryMainHolder(View itemView) {
     super(itemView);
 
-    GridLayoutManager.LayoutParams layoutParams = new GridLayoutManager.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
-    float margin = ResourceUtil.dpToPx(5);
-    layoutParams.setMargins((int) margin, (int) margin, (int) margin, (int) margin);
-    itemView.setLayoutParams(layoutParams);
   }
 
   @Override
   public void dispose() {
-    imageView = null;
-    textView = null;
+    imageView1 = null;
+    textView1 = null;
   }
 
   @Override
   public void attach() {
-    imageView = itemView.findViewById(R.id.image_view);
-    textView = itemView.findViewById(R.id.text_title);
+    imageView1 = itemView.findViewById(R.id.image_1);
+    textView1 = itemView.findViewById(R.id.text_1);
+    imageView2 = itemView.findViewById(R.id.image_2);
+    textView2 = itemView.findViewById(R.id.text_2);
+    imageView3 = itemView.findViewById(R.id.image_3);
+    textView3 = itemView.findViewById(R.id.text_3);
 
     if (null != bean) {
-      Glide.with(imageView).load(bean.getImageUrl()).into(imageView);
+      Glide.with(imageView1).load(bean.getImageUrl()).into(imageView1);
+      Glide.with(imageView2).load(bean.getImageUrl()).into(imageView2);
+      Glide.with(imageView3).load(bean.getImageUrl()).into(imageView3);
 
       List<TagBean> list = bean.getTagList();
       StringBuilder stringBuilder = new StringBuilder();
@@ -70,10 +73,23 @@ public abstract class SecondCategoryMainHolder extends CategoryMainViewHolder<Ca
           }
         }
       }
-      textView.setText(stringBuilder.toString());
+      textView1.setText(stringBuilder.toString());
+      textView2.setText(stringBuilder.toString());
+      textView3.setText(stringBuilder.toString());
     }
 
-    imageView.setOnClickListener(v -> {
+    imageView1.setOnClickListener(v -> {
+      if (null != listener) {
+        listener.onEvent(new Event.Builder(Event.CONTENTS).index(index).build());
+      }
+    });
+
+    imageView2.setOnClickListener(v -> {
+      if (null != listener) {
+        listener.onEvent(new Event.Builder(Event.CONTENTS).index(index).build());
+      }
+    });
+    imageView3.setOnClickListener(v -> {
       if (null != listener) {
         listener.onEvent(new Event.Builder(Event.CONTENTS).index(index).build());
       }
@@ -83,11 +99,25 @@ public abstract class SecondCategoryMainHolder extends CategoryMainViewHolder<Ca
 
   @Override
   public void detach() {
-    if (null != imageView) {
-      Glide.with(imageView).clear(imageView);
-      imageView.setOnClickListener(null);
-      imageView = null;
-      textView = null;
+    if (null != imageView1) {
+      Glide.with(imageView1).clear(imageView1);
+      imageView1.setOnClickListener(null);
+      imageView1 = null;
+      textView1 = null;
+    }
+
+    if (null != imageView2) {
+      Glide.with(imageView2).clear(imageView2);
+      imageView2.setOnClickListener(null);
+      imageView2 = null;
+      textView2 = null;
+    }
+
+    if (null != imageView3) {
+      Glide.with(imageView3).clear(imageView3);
+      imageView3.setOnClickListener(null);
+      imageView3 = null;
+      textView3 = null;
     }
 
   }

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type2/SecondCategoryMainDefaultImageItemViewHolder.java

@@ -12,9 +12,9 @@ import android.view.View;
  * @history 하세미   [2018-10-31]   [최초 작성]
  * @since 2018-10-31
  */
-public class SecondCategoryMainDefaultImageItemViewHolder extends SecondCategoryMainHolder {
+public class SecondCategorySecondItemViewHolder extends SecondCategoryMainHolder {
 
-  public SecondCategoryMainDefaultImageItemViewHolder(View itemView) {
+  public SecondCategorySecondItemViewHolder(View itemView) {
     super(itemView);
   }
 

+ 20 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type2/SecondCategoryThirdItemViewHolder.java

@@ -0,0 +1,20 @@
+package kr.co.zumo.app.lifeplus.view.screen.category.type2;
+
+import android.view.View;
+
+/**
+ * SecondCategoryThirdItemViewHolder
+ * <pre>
+ * </pre>
+ *
+ * @author 하세미
+ * @version 1.0
+ * @history 하세미   [2018-11-22]   [최초 작성]
+ * @since 2018-11-22
+ */
+public class SecondCategoryThirdItemViewHolder extends SecondCategoryMainHolder {
+
+  public SecondCategoryThirdItemViewHolder(View itemView) {
+    super(itemView);
+  }
+}

+ 132 - 0
app/src/main/res/layout/main_second_category_first_row.xml

@@ -0,0 +1,132 @@
+<?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:layout_width="match_parent"
+  android:layout_height="205dp"
+  android:orientation="horizontal"
+  android:weightSum="3"
+  >
+
+  <android.support.constraint.ConstraintLayout
+    android:id="@+id/layout_1"
+    android:layout_width="0dp"
+    android:layout_height="match_parent"
+    android:layout_marginEnd="7dp"
+    android:layout_weight="2"
+    app:layout_constraintBottom_toBottomOf="parent"
+    app:layout_constraintEnd_toStartOf="@+id/layout_2"
+    app:layout_constraintStart_toStartOf="parent"
+    app:layout_constraintTop_toTopOf="parent">
+
+    <ImageView
+      android:id="@+id/image_1"
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"
+      android:scaleType="centerCrop"
+      android:src="@drawable/banner_bg_1"
+      app:layout_constraintBottom_toBottomOf="parent"
+      app:layout_constraintEnd_toEndOf="parent"
+      app:layout_constraintStart_toStartOf="parent"
+      app:layout_constraintTop_toTopOf="parent"
+      />
+
+    <TextView
+      android:id="@+id/text_1"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:layout_marginStart="15dp"
+      android:layout_marginEnd="15dp"
+      android:layout_marginBottom="15dp"
+      android:lineSpacingExtra="6sp"
+      android:textColor="@color/CFFFFFF"
+      android:textSize="14sp"
+      app:layout_constraintBottom_toBottomOf="parent"
+      app:layout_constraintEnd_toEndOf="parent"
+      app:layout_constraintStart_toStartOf="parent"
+      tools:text="여행은 돈쓰는 만큼"/>
+
+  </android.support.constraint.ConstraintLayout>
+
+  <LinearLayout
+    android:layout_width="0dp"
+    android:layout_height="match_parent"
+    android:layout_weight="1">
+
+
+    <LinearLayout
+      android:id="@+id/layout_2"
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"
+      android:orientation="vertical"
+      android:weightSum="2"
+      app:layout_constraintBottom_toBottomOf="parent"
+      app:layout_constraintEnd_toEndOf="parent"
+      app:layout_constraintHorizontal_chainStyle="packed"
+      app:layout_constraintStart_toEndOf="@+id/layout_1"
+      app:layout_constraintTop_toTopOf="parent">
+
+      <android.support.constraint.ConstraintLayout
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1">
+
+        <ImageView
+          android:id="@+id/image_2"
+          android:layout_width="match_parent"
+          android:layout_height="match_parent"
+          android:scaleType="centerCrop"
+          app:layout_constraintStart_toStartOf="parent"
+          app:layout_constraintTop_toTopOf="parent"
+          tools:src="@drawable/banner_bg_1"
+          />
+
+        <TextView
+          android:id="@+id/text_2"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_marginStart="15dp"
+          android:layout_marginBottom="15dp"
+          android:lineSpacingExtra="6sp"
+          android:textColor="@color/CFFFFFF"
+          android:textSize="14sp"
+          app:layout_constraintBottom_toBottomOf="parent"
+          app:layout_constraintEnd_toEndOf="parent"
+          app:layout_constraintStart_toStartOf="parent"
+          tools:text="디즈니랜드 여행"/>
+
+      </android.support.constraint.ConstraintLayout>
+
+      <android.support.constraint.ConstraintLayout
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1">
+
+        <ImageView
+          android:id="@+id/image_3"
+          android:layout_width="match_parent"
+          android:layout_height="match_parent"
+          android:layout_marginTop="7dp"
+          android:scaleType="centerCrop"
+          android:src="@drawable/banner_bg_1"
+          app:layout_constraintBottom_toBottomOf="parent"/>
+
+        <TextView
+          android:id="@+id/text_3"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_marginStart="15dp"
+          android:layout_marginBottom="15dp"
+          android:lineSpacingExtra="6sp"
+          android:textColor="@color/CFFFFFF"
+          android:textSize="14sp"
+          app:layout_constraintBottom_toBottomOf="parent"
+          app:layout_constraintEnd_toEndOf="parent"
+          app:layout_constraintStart_toStartOf="parent"
+          tools:text="디즈니랜드 여행"/>
+      </android.support.constraint.ConstraintLayout>
+    </LinearLayout>
+
+  </LinearLayout>
+</LinearLayout>

+ 138 - 0
app/src/main/res/layout/main_second_category_second_row.xml

@@ -0,0 +1,138 @@
+<?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:layout_width="match_parent"
+  android:layout_height="205dp"
+  android:orientation="horizontal"
+  android:weightSum="3"
+  >
+
+  <LinearLayout
+    android:layout_width="0dp"
+    android:layout_height="match_parent"
+    android:layout_weight="1">
+
+
+    <LinearLayout
+      android:id="@+id/layout_2"
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"
+      android:orientation="vertical"
+      android:weightSum="2"
+      app:layout_constraintBottom_toBottomOf="parent"
+      app:layout_constraintEnd_toEndOf="parent"
+      app:layout_constraintHorizontal_chainStyle="packed"
+      app:layout_constraintStart_toEndOf="@+id/layout_1"
+      app:layout_constraintTop_toTopOf="parent">
+
+      <android.support.constraint.ConstraintLayout
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1">
+
+        <ImageView
+          android:id="@+id/image_1"
+          android:layout_width="match_parent"
+          android:layout_height="match_parent"
+          android:scaleType="centerCrop"
+          app:layout_constraintStart_toStartOf="parent"
+          app:layout_constraintTop_toTopOf="parent"
+          tools:src="@drawable/banner_bg_1"
+          />
+
+        <TextView
+          android:id="@+id/text_1"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_marginStart="10dp"
+          android:layout_marginEnd="10dp"
+          android:layout_marginBottom="15dp"
+          android:lineSpacingExtra="6sp"
+          android:maxLines="1"
+          android:textColor="@color/CFFFFFF"
+          android:textSize="14sp"
+          app:layout_constraintBottom_toBottomOf="parent"
+          app:layout_constraintEnd_toEndOf="parent"
+          app:layout_constraintStart_toStartOf="parent"
+          tools:text="디즈니랜드 여행"/>
+
+      </android.support.constraint.ConstraintLayout>
+
+      <android.support.constraint.ConstraintLayout
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1">
+
+        <ImageView
+          android:id="@+id/image_2"
+          android:layout_width="match_parent"
+          android:layout_height="match_parent"
+          android:layout_marginTop="7dp"
+          android:scaleType="centerCrop"
+          android:src="@drawable/banner_bg_1"
+          app:layout_constraintBottom_toBottomOf="parent"/>
+
+        <TextView
+          android:id="@+id/text_2"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_marginStart="10dp"
+          android:layout_marginEnd="10dp"
+          android:layout_marginBottom="15dp"
+          android:lineSpacingExtra="6sp"
+          android:maxLines="1"
+          android:textColor="@color/CFFFFFF"
+          android:textSize="14sp"
+          app:layout_constraintBottom_toBottomOf="parent"
+          app:layout_constraintEnd_toEndOf="parent"
+          app:layout_constraintStart_toStartOf="parent"
+
+          tools:text="디즈니랜드 여행"/>
+      </android.support.constraint.ConstraintLayout>
+    </LinearLayout>
+
+  </LinearLayout>
+
+  <android.support.constraint.ConstraintLayout
+    android:id="@+id/layout_1"
+    android:layout_width="0dp"
+    android:layout_height="match_parent"
+    android:layout_marginStart="7dp"
+    android:layout_weight="2"
+    app:layout_constraintBottom_toBottomOf="parent"
+    app:layout_constraintStart_toEndOf="@+id/layout_2"
+    app:layout_constraintTop_toTopOf="parent">
+
+    <ImageView
+      android:id="@+id/image_3"
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"
+      android:scaleType="centerCrop"
+      android:src="@drawable/banner_bg_1"
+      app:layout_constraintBottom_toBottomOf="parent"
+      app:layout_constraintEnd_toEndOf="parent"
+      app:layout_constraintStart_toStartOf="parent"
+      app:layout_constraintTop_toTopOf="parent"
+      />
+
+    <TextView
+      android:id="@+id/text_3"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:layout_marginStart="15dp"
+      android:layout_marginEnd="15dp"
+      android:layout_marginBottom="15dp"
+      android:lineSpacingExtra="6sp"
+      android:textColor="@color/CFFFFFF"
+      android:textSize="14sp"
+      app:layout_constraintBottom_toBottomOf="parent"
+      app:layout_constraintEnd_toEndOf="parent"
+      app:layout_constraintStart_toStartOf="parent"
+      tools:text="여행은 돈쓰는 만큼"/>
+
+  </android.support.constraint.ConstraintLayout>
+
+
+</LinearLayout>

+ 120 - 0
app/src/main/res/layout/main_second_category_third_row.xml

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<android.support.constraint.ConstraintLayout
+  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="99dp"
+  >
+
+  <LinearLayout
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="horizontal"
+    android:weightSum="3">
+
+    <android.support.constraint.ConstraintLayout
+      android:layout_width="0dp"
+      android:layout_height="match_parent"
+      android:layout_marginEnd="7dp"
+      android:layout_weight="1">
+
+      <ImageView
+        android:id="@+id/image_1"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:scaleType="centerCrop"
+        android:src="@drawable/banner_bg_1"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent"/>
+
+      <TextView
+        android:id="@+id/text_1"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="10dp"
+        android:layout_marginBottom="10dp"
+        android:lineSpacingExtra="4sp"
+        android:textColor="@color/CFFFFFF"
+        android:textSize="12sp"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        tools:text="다국적 배낭여행"/>
+
+    </android.support.constraint.ConstraintLayout>
+
+    <android.support.constraint.ConstraintLayout
+      android:layout_width="0dp"
+      android:layout_height="match_parent"
+      android:layout_marginEnd="7dp"
+      android:layout_weight="1"
+      >
+
+      <ImageView
+        android:id="@+id/image_2"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:scaleType="centerCrop"
+        android:src="@drawable/banner_bg_1"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent"/>
+
+      <TextView
+        android:id="@+id/text_2"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="10dp"
+        android:layout_marginBottom="10dp"
+        android:lineSpacingExtra="4sp"
+        android:textColor="@color/CFFFFFF"
+        android:textSize="12sp"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        tools:text="다국적 배낭여행"/>
+    </android.support.constraint.ConstraintLayout>
+
+    <android.support.constraint.ConstraintLayout
+      android:layout_width="0dp"
+      android:layout_height="match_parent"
+      android:layout_weight="1"
+      app:layout_constraintBottom_toBottomOf="parent"
+      app:layout_constraintEnd_toEndOf="parent"
+      app:layout_constraintStart_toStartOf="parent"
+      app:layout_constraintTop_toTopOf="parent">
+
+      <ImageView
+        android:id="@+id/image_3"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:scaleType="centerCrop"
+        android:src="@drawable/banner_bg_1"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent"
+        />
+
+      <TextView
+        android:id="@+id/text_3"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="10dp"
+        android:layout_marginBottom="10dp"
+        android:lineSpacingExtra="4sp"
+        android:textColor="@color/CFFFFFF"
+        android:textSize="12sp"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        tools:text="다국적 배낭여행"/>
+    </android.support.constraint.ConstraintLayout>
+  </LinearLayout>
+
+
+</android.support.constraint.ConstraintLayout>

+ 2 - 2
app/src/main/res/values/arrays.xml

@@ -27,8 +27,8 @@
   
   <string-array name="main_filter">
     <item>최신순</item>
-    <item>좋아요 순</item>
-    <item>북마크 순</item>
+    <item>좋아요순</item>
+    <item>북마크순</item>
 
   </string-array>