Browse Source

Merge branch 'develop' of https://github.com/swict/LifePlusAndroid into develop

Hasemi 7 years ago
parent
commit
0b59f82d97

+ 1 - 1
app/build.gradle

@@ -23,7 +23,7 @@ android {
         minSdkVersion 19    // 4.4
         targetSdkVersion 27
         versionCode 149
-        versionName "4.0.0.32"
+        versionName "4.0.0.33"
         testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
         multiDexEnabled true
         vectorDrawables.useSupportLibrary = true

+ 0 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/bean/api/ContentsDetailBean.java

@@ -28,7 +28,6 @@ public class ContentsDetailBean extends LifeplusContentsBean {
   public final static String TYPE_LISTICLE = "01";
   public final static String TYPE_CARD_LISTICLE = "02";
   public final static String TYPE_CARD = "03";
-  public final static String TYPE_HTML = "04";
 
   @SerializedName("itemDvsn")
   private String itemType;

+ 1 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/bean/api/coop/CoopAPIBean.java

@@ -57,6 +57,6 @@ public class CoopAPIBean extends JsonBeanBase {
    * @return
    */
   public boolean isSuccess() {
-    return code == RETURN_SUCCESS;
+    return RETURN_SUCCESS.equals(code);
   }
 }

+ 4 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/util/StringUtil.java

@@ -394,6 +394,10 @@ public class StringUtil {
           break;
         }
       }
+      
+      if (targetIndex == -1) {
+        return str;
+      }
 //      Log.i("APP# StringUtil | twoLine", "|" + "str: " + str + ", target: " + targetIndex);
       return str.substring(0, targetIndex) + "\n" + str.substring(targetIndex + 1);
 

+ 7 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/contents/ContentsFragment.java

@@ -228,7 +228,14 @@ public class ContentsFragment extends FragmentBase<ContentsPresenter> implements
 
   @Override
   public boolean dispatchBackPressed() {
+    if (null == layoutManager || null == recyclerViewContentsDetail) {
+      return false;
+    }
+
     ContentsHolder holder = (ContentsHolder) recyclerViewContentsDetail.findViewHolderForAdapterPosition(layoutManager.findFirstVisibleItemPosition());
+    if (null == holder) {
+      return false;
+    }
     return holder.dispatchBackPressed();
   }
 

+ 21 - 21
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/contents/ContentsHtmlHolder.java

@@ -9,7 +9,6 @@ import android.util.Log;
 import android.view.View;
 import android.webkit.JavascriptInterface;
 import android.webkit.SslErrorHandler;
-import android.webkit.WebChromeClient;
 import android.webkit.WebSettings;
 import android.webkit.WebView;
 import android.webkit.WebViewClient;
@@ -92,26 +91,27 @@ public class ContentsHtmlHolder extends ContentsHolder<ContentsDetailBean> {
       FrameLayout customViewContainerBack = itemView.findViewById(R.id.layout_full_screen_background);
 //      FrameLayout customViewContainer = activity.findViewById(android.R.id.content);
 
-      webView.setWebChromeClient(new WebChromeClient() {
-
-        public void onShowCustomView(View view, WebChromeClient.CustomViewCallback callback) {
-          super.onShowCustomView(view, callback);
-          webView.setVisibility(View.GONE);
-          customViewContainerBack.setVisibility(View.VISIBLE);
-          customViewContainer.setVisibility(View.VISIBLE);
-          customViewContainer.addView(view);
-          view.setBackground(null);
-          isShowFullScreenVideo = true;
-        }
-
-        public void onHideCustomView() {
-          super.onHideCustomView();
-          webView.setVisibility(View.VISIBLE);
-          customViewContainerBack.setVisibility(View.GONE);
-          customViewContainer.setVisibility(View.GONE);
-          isShowFullScreenVideo = false;
-        }
-      });
+      // fixme 일부 기기에서 실행되지 않아서 제거(임시)
+//      webView.setWebChromeClient(new WebChromeClient() {
+//
+//        public void onShowCustomView(View view, WebChromeClient.CustomViewCallback callback) {
+//          super.onShowCustomView(view, callback);
+//          webView.setVisibility(View.GONE);
+//          customViewContainerBack.setVisibility(View.VISIBLE);
+//          customViewContainer.setVisibility(View.VISIBLE);
+//          customViewContainer.addView(view);
+//          view.setBackground(null);
+//          isShowFullScreenVideo = true;
+//        }
+//
+//        public void onHideCustomView() {
+//          super.onHideCustomView();
+//          webView.setVisibility(View.VISIBLE);
+//          customViewContainerBack.setVisibility(View.GONE);
+//          customViewContainer.setVisibility(View.GONE);
+//          isShowFullScreenVideo = false;
+//        }
+//      });
 
 //      webChromeClient = new VideoEnabledWebChromeClient(webView, customViewContainer) {
 //        @Override

+ 22 - 5
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/contents/ContentsOverviewAdapter.java

@@ -6,11 +6,13 @@ import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.ViewGroup;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.bean.api.ContentsDetailBean;
-import kr.co.zumo.app.lifeplus.view.Event;
+import kr.co.zumo.app.lifeplus.bean.api.ContentsDetailImageBean;
+import kr.co.zumo.app.lifeplus.bean.api.LifeplusImageBean;
 import kr.co.zumo.app.lifeplus.view.IEventListener;
 
 /**
@@ -55,11 +57,26 @@ public class ContentsOverviewAdapter extends RecyclerView.Adapter<ContentsOvervi
 
   @Override
   public void onBindViewHolder(@NonNull ContentsOverviewHolder holder, int position) {
-    holder.bind(position, contentsDetailList.get(position), new IEventListener() {
-      @Override
-      public void onEvent(Event event) {
-        listener.onEvent(event);
+
+    ContentsDetailBean contentsDetailBean = contentsDetailList.get(position);
+
+    if (LifeplusImageBean.TYPE_HTML.equals(contentsDetailBean.getImageType())) {
+      // html 일 경우 커버 이미지를 사용한다.
+      List<ContentsDetailImageBean> list = contentsDetailBean.getItemImageList();
+      ContentsDetailImageBean imageBean = new ContentsDetailImageBean();
+      imageBean.setImageUrlForOverview(contentsDetailList.get(0).getOverviewImageUrl());
+      if (null != list && list.size() > 0) {
+        list.set(0, imageBean);
       }
+      else {
+        list = new ArrayList<>();
+        list.add(imageBean);
+      }
+      contentsDetailBean.setItemImageList(list);
+    }
+
+    holder.bind(position, contentsDetailBean, event -> {
+      listener.onEvent(event);
     });
   }
 

+ 1 - 3
app/src/main/res/layout/main_third_category_grid_view.xml

@@ -22,13 +22,11 @@
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_marginTop="11dp"
-    android:layout_marginBottom="9dp"
     android:lineSpacingExtra="3sp"
     android:textColor="@color/C000000"
     android:textSize="14sp"
-    app:layout_constraintBottom_toBottomOf="parent"
     app:layout_constraintTop_toBottomOf="@+id/image_view_main_third_category"
-    tools:text="샤오룽바오\n만들기"
+    tools:text="샤오룽바오 만들기"
     />
 
 </android.support.constraint.ConstraintLayout>