Selaa lähdekoodia

[카테고리][New] 카테고리 메인, 되돌아올 때 화면 갱신되는 현상 수정
- spinner 의 이벤트가 등록되면서 바로 작동하여 데이터를 다시 로드하여 발생한 현상

hyodong.min 7 vuotta sitten
vanhempi
commit
0e373b975a

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

@@ -48,10 +48,11 @@ public abstract class CategoryMainModel extends Model {
   @APICategoryContentsLoadModule.Order
   private int currentOrder = APICategoryContentsLoadModule.ORDER_BY_LATEST;
 
-  @CallSuper
   @Override
   protected void createViewInternal() {
   }
+
+  @CallSuper
   @Override
   protected void destroyInternal() {
     disposeLoading();

+ 1 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/CategoryMainPresenter.java

@@ -104,10 +104,10 @@ public abstract class CategoryMainPresenter<M extends CategoryMainModel, V exten
   protected final void onEventInternal(Event event) {
     switch (event.getEventId()) {
       case Event.ORDER:
+        Log.i("APP# CategoryMainPresenter | onEventInternal", "|" + event);
         int index = event.getIndex();
         setContentsOrder(index);
         model.loadContents(getCategoryNumber());
-
         break;
       case Event.RECOMMEND:
         Log.i("APP# CategoryMainPresenter | onEventInternal", "|" + event);

+ 10 - 4
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type1/FirstCategoryMainFragment.java

@@ -139,13 +139,19 @@ public class FirstCategoryMainFragment extends FragmentBase<FirstCategoryMainPre
     spinnerOrder.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
       @Override
       public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-        presenter.onEvent(new Event.Builder(Event.ORDER).index(position).build());
+        spinnerOrder.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
+          @Override
+          public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
+            presenter.onEvent(new Event.Builder(Event.ORDER).index(position).build());
+          }
+
+          @Override
+          public void onNothingSelected(AdapterView<?> parent) {}
+        });
       }
 
       @Override
-      public void onNothingSelected(AdapterView<?> parent) {
-        //
-      }
+      public void onNothingSelected(AdapterView<?> parent) {}
     });
 
   }

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

@@ -133,13 +133,19 @@ public class SecondCategoryMainFragment extends FragmentBase<SecondCategoryMainP
     spinnerOrder.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
       @Override
       public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-        presenter.onEvent(new Event.Builder(Event.ORDER).index(position).build());
+        spinnerOrder.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
+          @Override
+          public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
+            presenter.onEvent(new Event.Builder(Event.ORDER).index(position).build());
+          }
+
+          @Override
+          public void onNothingSelected(AdapterView<?> parent) {}
+        });
       }
 
       @Override
-      public void onNothingSelected(AdapterView<?> parent) {
-        //
-      }
+      public void onNothingSelected(AdapterView<?> parent) {}
     });
   }
 

+ 10 - 4
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type3/ThirdCategoryMainFragment.java

@@ -132,13 +132,19 @@ public class ThirdCategoryMainFragment extends FragmentBase<ThirdCategoryMainPre
     spinnerOrder.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
       @Override
       public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-        presenter.onEvent(new Event.Builder(Event.ORDER).index(position).build());
+        spinnerOrder.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
+          @Override
+          public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
+            presenter.onEvent(new Event.Builder(Event.ORDER).index(position).build());
+          }
+
+          @Override
+          public void onNothingSelected(AdapterView<?> parent) {}
+        });
       }
 
       @Override
-      public void onNothingSelected(AdapterView<?> parent) {
-        //
-      }
+      public void onNothingSelected(AdapterView<?> parent) {}
     });
 
   }

+ 11 - 6
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type4/FourthCategoryMainFragment.java

@@ -80,7 +80,7 @@ public class FourthCategoryMainFragment extends FragmentBase<FourthCategoryMainP
 
   @Override
   protected void onAfterDestroyView() {
-    if(null != spinnerOrder) {
+    if (null != spinnerOrder) {
       spinnerOrder.setOnItemSelectedListener(null);
       spinnerOrder = null;
     }
@@ -109,7 +109,6 @@ public class FourthCategoryMainFragment extends FragmentBase<FourthCategoryMainP
 
   @Override
   public void drawContentsBanner(ArrayList<CategoryBannerBean> bannerBeans, ArrayList<CategoryContentsBean> contents) {
-
     FourthCategoryMainAdapter fourthCategoryMainAdapter = new FourthCategoryMainAdapter(getActivity(), bannerBeans, contents, event -> {
       presenter.onEvent(event);
     });
@@ -120,13 +119,19 @@ public class FourthCategoryMainFragment extends FragmentBase<FourthCategoryMainP
     spinnerOrder.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
       @Override
       public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
-        presenter.onEvent(new Event.Builder(Event.ORDER).index(position).build());
+        spinnerOrder.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
+          @Override
+          public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
+            presenter.onEvent(new Event.Builder(Event.ORDER).index(position).build());
+          }
+
+          @Override
+          public void onNothingSelected(AdapterView<?> parent) {}
+        });
       }
 
       @Override
-      public void onNothingSelected(AdapterView<?> parent) {
-        //
-      }
+      public void onNothingSelected(AdapterView<?> parent) {}
     });
   }
 

+ 0 - 4
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type4/FourthCategoryMainItemViewHolder.java

@@ -66,10 +66,6 @@ public class FourthCategoryMainItemViewHolder extends CategoryMainViewHolder<Cat
     if (null != imageViewMainFourthCategory) {
       Glide.with(imageViewMainFourthCategory).clear(imageViewMainFourthCategory);
       imageViewMainFourthCategory.setOnClickListener(null);
-      imageViewMainFourthCategory = null;
-      textViewMainFourthCategoryTitle1 = null;
-      textViewMainFourthCategoryTitle2 = null;
-      textViewMainFourthCategoryTitle3 = null;
     }
 
   }

+ 7 - 8
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type5/FifthCategoryMainFragment.java

@@ -45,6 +45,13 @@ public class FifthCategoryMainFragment extends FragmentBase<FifthCategoryMainPre
   @Override
   protected void onAfterActivityCreated(Bundle savedInstanceState) {
     recyclerViewFifthCategoryMain = findViewById(R.id.recycler_view_fifth_category_main);
+    recyclerViewFifthCategoryMain.addItemDecoration(new RecyclerView.ItemDecoration() {
+      @Override
+      public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
+        super.getItemOffsets(outRect, view, parent, state);
+        outRect.bottom = ResourceUtil.dpToPx(20);
+      }
+    });
     textDate = findViewById(R.id.text_view_main_fifth_category_week);
   }
 
@@ -86,19 +93,11 @@ public class FifthCategoryMainFragment extends FragmentBase<FifthCategoryMainPre
 
   @Override
   public void drawContentsBanner(ArrayList<CategoryBannerBean> beans, ArrayList<CategoryContentsBean> contents) {
-
     FifthCategoryMainAdapter fifthCategoryMainAdapter = new FifthCategoryMainAdapter(getActivity(), beans, contents, event -> {
       presenter.onEvent(event);
     });
     LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getContext(), LinearLayoutManager.VERTICAL, false);
     recyclerViewFifthCategoryMain.setLayoutManager(linearLayoutManager);
-    recyclerViewFifthCategoryMain.addItemDecoration(new RecyclerView.ItemDecoration() {
-      @Override
-      public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
-        super.getItemOffsets(outRect, view, parent, state);
-        outRect.bottom = ResourceUtil.dpToPx(20);
-      }
-    });
     recyclerViewFifthCategoryMain.setAdapter(fifthCategoryMainAdapter);
   }
 

+ 1 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/type5/FifthCategoryMainModel.java

@@ -27,6 +27,7 @@ public class FifthCategoryMainModel extends CategoryMainModel {
   @Override
   protected void createViewInternal() {
   }
+
   @Override
   protected void destroyInternal() {
     super.destroyInternal();