Browse Source

[액션바][New] API 23 미만의 스테이터스 컬러는 검정으로 고정

hyodong.min 6 years ago
parent
commit
f21c166bae

+ 14 - 6
app/src/main/java/kr/co/zumo/app/lifeplus/helper/ActionBarHelper.java

@@ -265,7 +265,7 @@ public class ActionBarHelper extends Helper {
 
     if (isHidden) {
       containerLayoutParams.setBehavior(null);
-      StatusBarCompat.setStatusBarColor(activity, ResourceUtil.getColor(R.color.C33000000));
+      setStatusBarTranslucentColor();
     }
     else if (isScrollable) {
       // 스크롤 플래그 설정
@@ -274,7 +274,7 @@ public class ActionBarHelper extends Helper {
 
       appBarLayoutParams.setBehavior(new CustomHeaderBehavior());
       containerLayoutParams.setBehavior(null);
-      setStatusBarColor();
+      setStatusBarOpaqueColor();
     }
     else {
       toolbarLayoutParams.setScrollFlags(0);
@@ -285,7 +285,7 @@ public class ActionBarHelper extends Helper {
       containerLayoutParams.setBehavior(null);
 
       if (isTransparentBackground) {
-        StatusBarCompat.setStatusBarColor(activity, ResourceUtil.getColor(R.color.C33000000));
+        setStatusBarTranslucentColor();
       }
       else {
         /**
@@ -299,7 +299,7 @@ public class ActionBarHelper extends Helper {
           }
         }
 
-        setStatusBarColor();
+        setStatusBarOpaqueColor();
       }
     }
   }
@@ -369,7 +369,7 @@ public class ActionBarHelper extends Helper {
   /**
    * API 버전별 full screen 시 status bar color 색 변경
    */
-  private void setStatusBarColor() {
+  private void setStatusBarOpaqueColor() {
     if (Build.VERSION.SDK_INT >= 23) {
       StatusBarCompat.setStatusBarColor(activity, ResourceUtil.getColor(R.color.CF2FFFFFF));
     }
@@ -377,6 +377,14 @@ public class ActionBarHelper extends Helper {
       StatusBarCompat.setStatusBarColor(activity, ResourceUtil.getColor(R.color.CF2000000));
     }
   }
+  private void setStatusBarTranslucentColor() {
+    if (Build.VERSION.SDK_INT >= 23) {
+      StatusBarCompat.setStatusBarColor(activity, ResourceUtil.getColor(R.color.C33000000));
+    }
+    else {
+      StatusBarCompat.setStatusBarColor(activity, ResourceUtil.getColor(R.color.CF2000000));
+    }
+  }
 
   private void setCategoryTabVisible() {
     if (navigationBar.isArrowOpened()) {
@@ -403,7 +411,7 @@ public class ActionBarHelper extends Helper {
      */
     actionBar.setCustomView(view, new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.MATCH_PARENT));
 
-    actionBar.setDisplayOptions(android.app.ActionBar.DISPLAY_SHOW_CUSTOM);
+    actionBar.setDisplayOptions(androidx.appcompat.app.ActionBar.DISPLAY_SHOW_CUSTOM);
     actionBar.setElevation(0);
   }