天天看點

Android 7.1 Launcher3 删除首頁搜尋框

平台

RK3288 + Android 7.1

RK3368 + Android 7.1

需求

删除主界面頂部搜尋框.

Android 7.1 Launcher3 删除首頁搜尋框

删除後

Android 7.1 Launcher3 删除首頁搜尋框

修改

  • packages/apps/Launcher3/src/com/android/launcher3/Launcher.java
    • 增加函數isQsbDisabled, 用于判斷是否删除搜尋欄, 修改傳回值即可設定是否删除.
    • 預設設定隐藏
diff --git a/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java b/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java
index 8bb0133..3e6ad5a 100755
--- a/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java
+++ b/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java
@@ -1059,6 +1059,13 @@ public class Launcher extends Activity
         if (mLauncherCallbacks != null) {
             mLauncherCallbacks.onResume();
         }
+
+        //AnsonCode hide search bar.
+        if(isQsbDisabled())mQsbContainer.setVisibility(View.GONE);
+    }
+
+    public static boolean isQsbDisabled(){
+        return true;
     }
 
     @Override
           
  • packages/apps/Launcher3/src/com/android/launcher3/Workspace.java
    • 判斷并去除首頁添加搜尋框, 否則, 隐藏後, APP圖示在拖動過程中, 搜尋框的位置依然被占用
    • 修改 isQsbContainerPage, 隐藏狀态下無意義.
diff --git a/packages/apps/Launcher3/src/com/android/launcher3/Workspace.java b/packages/apps/Launcher3/src/com/android/launcher3/Workspace.java
old mode 100644
new mode 100755
index 340177d..3c99137
--- a/packages/apps/Launcher3/src/com/android/launcher3/Workspace.java
+++ b/packages/apps/Launcher3/src/com/android/launcher3/Workspace.java
@@ -629,7 +629,8 @@ public class Workspace extends PagedView
 
         CellLayout.LayoutParams lp = new CellLayout.LayoutParams(0, 0, firstPage.getCountX(), 1);
         lp.canReorder = false;
-        if (!firstPage.addViewToCellLayout(qsb, 0, getEmbeddedQsbId(), lp, true)) {
+        //AnsonCode
+        if (!Launcher.isQsbDisabled() && !firstPage.addViewToCellLayout(qsb, 0, getEmbeddedQsbId(), lp, true)) {
             Log.e(TAG, "Failed to add to item at (0, 0) to CellLayout");
         }
     }
@@ -4360,6 +4361,6 @@ public class Workspace extends PagedView
     }
 
     public static final boolean isQsbContainerPage(int pageNo) {
-        return pageNo == 0;
+        return !Launcher.isQsbDisabled() && pageNo == 0;
     }
 }
           
  • packages/apps/Launcher3/src/com/android/launcher3/util/MultiStateAlphaController.java
    • 禁止在動畫過程重新設定為可見(保持隐藏/删除)
diff --git a/packages/apps/Launcher3/src/com/android/launcher3/util/MultiStateAlphaController.java b/packages/apps/Launcher3/src/com/android/launcher3/util/MultiStateAlphaController.java
old mode 100644
new mode 100755
index 956fc9e..8317195
--- a/packages/apps/Launcher3/src/com/android/launcher3/util/MultiStateAlphaController.java
+++ b/packages/apps/Launcher3/src/com/android/launcher3/util/MultiStateAlphaController.java
@@ -61,6 +61,10 @@ public class MultiStateAlphaController {
         mTargetView.setAlpha(finalAlpha);
         mTargetView.setVisibility(finalAlpha > 0 ? View.VISIBLE
                 : (mAm.isEnabled() ? View.GONE : View.INVISIBLE));
+        //AnsonCode
+        if(com.android.launcher3.R.id.qsb_container == mTargetView.getId() && com.android.launcher3.Launcher.isQsbDisabled()){
+            mTargetView.setVisibility(View.GONE);
+        }
     }
 
     /**

           

更新檔下載下傳

Launcher3_removeSearchBar.tar.gz