Android4.2_Launcher_launcher.xml

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android4.2_Launcher_launcher.xml相关的知识,希望对你有一定的参考价值。


1.概述。

launcher.xml作为主Activity的布局文件,分布在好几个配置文件中,layout-land(横屏),layout-port(竖屏)等。他们都会在生成在资源文件中(?),最终系统会选择使用那一个配置文件。比如我现在使用的是720p的。

2.结构

<FrameLayout
-- FrameLayout <com.android.launcher2.DragLayer
-- ImageView dock_divider 就是显示的一条白线。
-- ImageView paged_view_indicator 切换屏幕时显示的指示器。
-- ViewGroup Workspace 已经是经过层层包装的,但本质还是ViewGroup。
-- CellLayout workspace_screen workspace中放的五个页面。
...
-- hotseat 可以放快捷方式,还有一个Allapp按钮。
-- qsb_bar 搜索按钮。quick search bar。
-- workspace_cling 第一次进入系统时显示的指导页面。
-- <com.android.launcher2.DrawableStateProxyView
-- <com.android.launcher2.AppsCustomizeTabHost 点击AllApp显示。


源码:


<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2007 The Android Open Source Project

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<!-- Full screen view projects under the status bar and contains the background -->
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"

android:id="@+id/launcher"
android:layout_
android:layout_
android:background="@drawable/workspace_bg">

<com.android.launcher2.DragLayer
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"

android:id="@+id/drag_layer"
android:background="@drawable/workspace_bg"
android:layout_
android:layout_
android:fitsSystemWindows="true">

<!-- Keep these behind the workspace so that they are not visible when
we go into AllApps -->
<include
android:id="@+id/dock_divider"
layout="@layout/workspace_divider"
android:layout_
android:layout_
android:layout_marginBottom="@dimen/button_bar_height"
android:layout_gravity="bottom" />

<include
android:id="@+id/paged_view_indicator"
layout="@layout/scroll_indicator"
android:layout_
android:layout_
android:layout_gravity="bottom"
android:layout_marginBottom="@dimen/button_bar_height" />

<!-- The workspace contains 5 screens of cells -->
<com.android.launcher2.Workspace
android:id="@+id/workspace"
android:layout_
android:layout_
android:paddingLeft="@dimen/workspace_left_padding"
android:paddingRight="@dimen/workspace_right_padding"
android:paddingTop="@dimen/workspace_top_padding"
android:paddingBottom="@dimen/workspace_bottom_padding"
launcher:defaultScreen="2"
launcher:cellCountX="@integer/cell_count_x"
launcher:cellCountY="@integer/cell_count_y"
launcher:pageSpacing="@dimen/workspace_page_spacing"
launcher:scrollIndicatorPaddingLeft="@dimen/workspace_divider_padding_left"
launcher:scrollIndicatorPaddingRight="@dimen/workspace_divider_padding_right">

<include android:id="@+id/cell1" layout="@layout/workspace_screen" />
<include android:id="@+id/cell2" layout="@layout/workspace_screen" />
<include android:id="@+id/cell3" layout="@layout/workspace_screen" />
<include android:id="@+id/cell4" layout="@layout/workspace_screen" />
<include android:id="@+id/cell5" layout="@layout/workspace_screen" />
</com.android.launcher2.Workspace>

<include layout="@layout/hotseat"
android:id="@+id/hotseat"
android:layout_
android:layout_
android:layout_gravity="bottom" />

<include
android:id="@+id/qsb_bar"
layout="@layout/qsb_bar" />

<!-- The Workspace cling must appear under the AppsCustomizePagedView below to ensure
that it is still visible during the transition to AllApps and doesnt overlay on
top of that view. -->
<include layout="@layout/workspace_cling"
android:id="@+id/workspace_cling"
android:layout_
android:layout_
android:visibility="gone" />

<include layout="@layout/folder_cling"
android:id="@+id/folder_cling"
android:layout_
android:layout_
android:visibility="gone" />

<com.android.launcher2.DrawableStateProxyView
android:id="@+id/voice_button_proxy"
android:layout_
android:layout_
android:layout_gravity="top|right"
android:clickable="true"
android:onClick="onClickVoiceButton"
android:importantForAccessibility="no"
launcher:sourceViewId="@+id/voice_button" />

<include layout="@layout/apps_customize_pane"
android:id="@+id/apps_customize_pane"
android:layout_
android:layout_
android:visibility="invisible" />
</com.android.launcher2.DragLayer>
</FrameLayout>







以上是关于Android4.2_Launcher_launcher.xml的主要内容,如果未能解决你的问题,请参考以下文章

Android4.2如何让StatusBar透明

android4.2 wifidisplay远程显示修改为保存文件

android4.2 WifiDisplay远程显示修改为保存文件

android4.2 telephone应用层分析

Android4.2.2下Stagefright下OMX编解码器组件的控制流

Android4.2.2 动态显示隐藏屏幕底部的导航栏(对系统源码进行修改)