Android 8.1隐藏状态栏图标的实例代码

近期客户需求,状态栏只显示时间和电池图标,如图 

状态栏图标的布局文件在frameworks\base\packages\SystemUI\res\layout\status_bar.xml,主要包括通知,定位,蓝牙,信号,时间,电池等图标,只要在相应的布局文件中加入属性android:visibility="invisible" 或者“gone”即可

<?xml version="1.0" encoding="utf-8"?>

<!--

**

** Copyright 2006, 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.

*/

-->

<!-- android:background="@drawable/status_bar_closed_default_background" -->

<com.android.systemui.statusbar.phone.PhoneStatusBarView

xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui"

android:layout_width="match_parent"

android:layout_height="@dimen/status_bar_height"

android:id="@+id/status_bar"

android:background="@drawable/system_bar_background"

android:orientation="vertical"

android:focusable="false"

android:descendantFocusability="afterDescendants"

>

<ImageView

android:id="@+id/notification_lights_out"

android:layout_width="0dp"

android:layout_height="match_parent"

android:paddingStart="6dip"

android:paddingBottom="2dip"

android:src="@drawable/ic_sysbar_lights_out_dot_small"

android:scaleType="center"

android:visibility="gone"

/>

<LinearLayout android:id="@+id/status_bar_contents"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:paddingStart="6dp"

android:paddingEnd="8dp"

android:orientation="horizontal"

>

<!-- The alpha of this area is controlled from both PhoneStatusBarTransitions and

PhoneStatusBar (DISABLE_NOTIFICATION_ICONS). -->

<com.android.systemui.statusbar.AlphaOptimizedFrameLayout

android:id="@+id/notification_icon_area"

android:layout_width="0dip"

android:layout_height="match_parent"

android:layout_weight="1"

android:visibility="invisible"

android:orientation="horizontal" />

<com.android.keyguard.AlphaOptimizedLinearLayout android:id="@+id/system_icon_area"

android:layout_width="wrap_content"

android:layout_height="match_parent"

android:orientation="horizontal"

>

<include layout="@layout/system_icons" />

<com.android.systemui.statusbar.policy.Clock

android:id="@+id/clock"

android:textAppearance="@style/TextAppearance.StatusBar.Clock"

android:layout_width="wrap_content"

android:layout_height="match_parent"

android:singleLine="true"

android:paddingStart="@dimen/status_bar_clock_starting_padding"

android:paddingEnd="@dimen/status_bar_clock_end_padding"

android:gravity="center_vertical|start"

/>

</com.android.keyguard.AlphaOptimizedLinearLayout>

</LinearLayout>

<ViewStub

android:id="@+id/emergency_cryptkeeper_text"

android:layout_width="wrap_content"

android:layout_height="match_parent"

android:layout="@layout/emergency_cryptkeeper_text"

/>

</com.android.systemui.statusbar.phone.PhoneStatusBarView>

<?xml version="1.0" encoding="utf-8"?><!--

~ Copyright (C) 2014 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

-->

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:id="@+id/system_icons"

android:layout_width="wrap_content"

android:layout_height="match_parent"

android:gravity="center_vertical">

<com.android.keyguard.AlphaOptimizedLinearLayout android:id="@+id/statusIcons"

android:layout_width="wrap_content"

android:layout_height="match_parent"

android:gravity="center_vertical"

android:visibility="invisible"

android:orientation="horizontal"/>

<include layout="@layout/signal_cluster_view"

android:visibility="invisible"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginStart="@dimen/signal_cluster_margin_start"/>

<com.android.systemui.BatteryMeterView android:id="@+id/battery"

android:layout_height="match_parent"

android:layout_width="wrap_content"

/>

</LinearLayout>

总结

到此这篇关于Android 8.1隐藏状态栏图标的实例代码的文章就介绍到这了,更多相关android 隐藏状态栏图标内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

以上是 Android 8.1隐藏状态栏图标的实例代码 的全部内容, 来源链接: utcz.com/p/242613.html

回到顶部