亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android實現的狀態欄定制和修改方法

2020-04-11 11:24:34
字體:
來源:轉載
供稿:網友

本文實例講述了Android實現的狀態欄定制和修改方法。分享給大家供大家參考。具體如下:

大家都知道定制在android開發中的重要性,因為通過定制,你才能制造出差異化的產品,才能滿足更多消費者的需求,

像HTC生產的手機都通過了深層次的二次開發,今天我也來分享一下我的狀態欄定制。

廢話不說了,直接上圖:

主要更換了背景,文字顏色以及icon的顯示順序.

2. 關鍵代碼部分

a) 代碼在系統中的位置

status bar 的相關代碼位于:frameworks/base/services/java/com/android/server/status。
其中StatusBarPolicy類主要負責接收action動作,其他一些核心操作全部位于StatusBarService類里面

b) 代碼實例:

i. 接收action

if (action.equals(Intent.ACTION_BATTERY_CHANGED)) {  updateBattery(intent);}

ii. 更新icon

private final void updateBattery(Intent intent){   mBatteryData.iconId = intent.getIntExtra("icon-small", 0);   mBatteryData.iconLevel = intent.getIntExtra("level", 0);   mService.updateIcon(mBatteryIcon, mBatteryData, null);}

c) 資源位置:

Status bar 的相關資源位于:frameworks/base/core/res/res,關鍵布局為:base/core/res/res/layout/status_bar.xml ,

源碼如下:這里可以設置notification字體顏色。

<com.android.server.status.StatusBarView xmlns:android="http://schemas.android.com/apk/res/android" android:background="@drawable/statusbar_background"  android:orientation="vertical"  android:focusable="true"  android:descendantFocusability="afterDescendants"  >  <LinearLayout android:id="@+id/icons"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="horizontal">    <com.android.server.status.IconMerger      android:id="@+id/notificationIcons"      android:layout_width="0dip"      android:layout_weight="1"      android:layout_height="match_parent"      android:layout_alignParentRight="true"      android:paddingLeft="6dip"      android:gravity="center_vertical"      android:orientation="horizontal"/>     <LinearLayout      android:id="@+id/statusIcons"      android:layout_width="wrap_content"      android:layout_height="match_parent"    android:layout_alignParentLeft="true"      android:paddingRight="6dip"      android:gravity="center_vertical"      android:orientation="horizontal"/>    </LinearLayout>  <LinearLayout android:id="@+id/ticker"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingLeft="6dip"    android:animationCache="false"    android:orientation="horizontal" >    <ImageSwitcher android:id="@+id/tickerIcon"      android:layout_width="wrap_content"      android:layout_height="match_parent"      android:layout_marginRight="8dip"      >      <com.android.server.status.AnimatedImageView        android:layout_width="25dip"        android:layout_height="25dip"        />      <com.android.server.status.AnimatedImageView        android:layout_width="25dip"        android:layout_height="25dip"        />    </ImageSwitcher>    <com.android.server.status.TickerView android:id="@+id/tickerText"      android:layout_width="0dip"      android:layout_weight="1"      android:layout_height="wrap_content"      android:paddingTop="2dip"      android:paddingRight="10dip">      <TextView        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:singleLine="true"        android:textColor="#ff000000" />      <TextView        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:singleLine="true"        android:textColor="#ff000000" />    </com.android.server.status.TickerView>  </LinearLayout>  <com.android.server.status.DateView android:id="@+id/date"    android:layout_width="wrap_content"    android:layout_height="match_parent"    android:singleLine="true"    android:textSize="16sp"    android:textStyle="bold"    android:gravity="center_vertical|left"    android:paddingLeft="6px"    android:paddingRight="6px"    android:textColor="?android:attr/textColorPrimaryInverse"    android:background="@drawable/statusbar_background"    /></com.android.server.status.StatusBarView>

3. 簡單修改

對status bar 的修改主要包括status bar的背景顏色、icon、字體顏色、icon順序等。

a) 背景顏色:

背景顏色由frameworks/base/core/res/res/drawable-mdpi/statusbar_background.9.png決定,原始顏色是灰色,我們修改為黑色。

b) Icon:

Icon根據不同顯示項,由不同資源決定,暫時不更改。

c) 字體顏色:

由frameworks/base/services/java/com/android/server/status/ StatusBarIcon類中的代碼控制,原始代碼為:t.setTextColor(0xff000000),即黑色,我們將其更改為白色:t.setTextColor(0xffffffff)。

d) icon順序:

由frameworks/base/core/res/res/values/array里面的資源文件控制,原始代碼如下:

<string-array name="status_bar_icon_order">    <item><xliff:g id="id">clock</xliff:g></item>    <item><xliff:g id="id">secure</xliff:g></item>    <item><xliff:g id="id">alarm_clock</xliff:g></item>    <item><xliff:g id="id">battery</xliff:g></item>    <item><xliff:g id="id">phone_signal</xliff:g></item>    <item><xliff:g id="id">phone_evdo_signal</xliff:g></item>    <item><xliff:g id="id">data_connection</xliff:g></item>    <item><xliff:g id="id">cdma_eri</xliff:g></item>    <item><xliff:g id="id">tty</xliff:g></item>    <item><xliff:g id="id">volume</xliff:g></item>    <item><xliff:g id="id">mute</xliff:g></item>    <item><xliff:g id="id">speakerphone</xliff:g></item>    <item><xliff:g id="id">wifi</xliff:g></item>    <item><xliff:g id="id">tty</xliff:g></item>    <item><xliff:g id="id">bluetooth</xliff:g></item>    <item><xliff:g id="id">gps</xliff:g></item>    <item><xliff:g id="id">sync_active</xliff:g></item>    <item><xliff:g id="id">sync_failing</xliff:g></item>    <item><xliff:g id="id">ime</xliff:g></item></string-array>

我們將battery與clock的位置更換。

希望本文所述對大家的Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
蜜臀久久99精品久久久无需会员| 国产精品网站视频| 成人久久一区二区三区| 亚洲图片欧美日产| 久操成人在线视频| 亚洲欧洲一区二区三区久久| 亚洲国语精品自产拍在线观看| 欧美激情精品久久久久| 在线看日韩av| 日本国产精品视频| 亲爱的老师9免费观看全集电视剧| 欧美精品久久久久| 国产亚洲成av人片在线观看桃| 国产精品美女www爽爽爽视频| 国产成人av在线| 久久久久亚洲精品国产| 日韩免费视频在线观看| 中文日韩在线视频| 精品偷拍一区二区三区在线看| 欧美日韩成人网| 欧美一区二区三区免费观看| 欧美另类老女人| 亚洲国产精品一区二区三区| 久久99热这里只有精品国产| 久久人人爽人人爽人人片av高请| 国产精品亚洲综合天堂夜夜| 亚洲另类图片色| 欧美日韩中文字幕| 96sao精品视频在线观看| 久久久久久久国产精品| 在线日韩中文字幕| 国产精品v片在线观看不卡| 国产精品你懂得| 亚洲欧美国产高清va在线播| 久久手机免费视频| 岛国av午夜精品| 91香蕉嫩草神马影院在线观看| 亚洲综合小说区| 日韩中文字幕免费视频| 永久免费看mv网站入口亚洲| 欧美激情亚洲国产| 欧美大片在线免费观看| 欧美壮男野外gaytube| 精品亚洲一区二区三区在线观看| 国产精品羞羞答答| 国语自产精品视频在免费| 国产精品久久久久久久久久免费| 97超级碰碰人国产在线观看| 91精品在线播放| 91中文在线视频| 亚洲国产精彩中文乱码av在线播放| 久久精品成人动漫| 97在线视频精品| 亚洲福利视频二区| 久久久久久久久久久av| 亚洲人高潮女人毛茸茸| 中文字幕成人精品久久不卡| 国产日韩在线免费| 欧美高跟鞋交xxxxhd| 亚洲精品美女在线观看| 欧美日韩精品在线观看| 91av在线免费观看| 国产精品黄色av| 久久久久久久久久久国产| 深夜福利91大全| 夜夜嗨av色综合久久久综合网| 欧美在线播放视频| 庆余年2免费日韩剧观看大牛| 97国产精品免费视频| 亚洲人成啪啪网站| 日韩精品极品在线观看播放免费视频| 国产欧美在线观看| 日本久久久久久| www.国产一区| 久久久国产视频| 欧美裸体xxxx极品少妇| 国产精品永久免费视频| 日韩欧美aⅴ综合网站发布| 九九综合九九综合| 热久久这里只有| 在线播放日韩欧美| 最近2019中文字幕mv免费看| 欧美视频在线视频| 久久久久久久成人| 久久久久亚洲精品成人网小说| 高清视频欧美一级| 日韩视频免费观看| 91产国在线观看动作片喷水| 成人乱色短篇合集| 欧美日韩国产一区中文午夜| 国产91在线播放九色快色| 亚洲美女精品成人在线视频| 国产精品h在线观看| 日韩av在线不卡| 欧美视频在线免费| 亚洲视频在线观看视频| 亚洲一区精品电影| 成人精品视频在线| 久久九九亚洲综合| 日韩av在线免费观看| 91久久精品国产91久久性色| 国产精品久久久久久久久久三级| 国产成人av网| 久久久久99精品久久久久| 国产香蕉一区二区三区在线视频| 精品无人区太爽高潮在线播放| 国产91露脸中文字幕在线| 国产日产欧美a一级在线| 国产福利视频一区| 亚洲日本欧美日韩高观看| 精品女同一区二区三区在线播放| 国产99久久精品一区二区| 精品久久久久久亚洲精品| 91产国在线观看动作片喷水| 欧美极品少妇xxxxⅹ喷水| 2020久久国产精品| 久久这里有精品视频| 欧美自拍视频在线观看| 狠狠躁夜夜躁人人爽超碰91| 岛国av在线不卡| 91精品久久久久久综合乱菊| 成人字幕网zmw| 亚洲自拍偷拍福利| 成人午夜激情网| 中文字幕国产精品| 久久久精品国产网站| 国产精品中文字幕在线| 亚洲福利视频在线| 97久久久免费福利网址| 日韩免费在线观看视频| 国产区亚洲区欧美区| 国产精品国内视频| 伦伦影院午夜日韩欧美限制| 亚洲人成在线观看| 亚洲最大的网站| 成人性生交xxxxx网站| 国产精品入口免费视频一| 久热精品视频在线免费观看| 亚洲国产另类久久精品| 国产精品一区专区欧美日韩| 国产精品va在线播放| 欧美在线视频a| 日韩中文字幕视频在线| 国产丝袜精品视频| 7m精品福利视频导航| 亚洲国产另类 国产精品国产免费| 中文字幕日韩电影| 亚洲网站在线看| 久久久999精品| 黑人巨大精品欧美一区二区| 一区二区三区日韩在线| 欧美成人在线免费视频| 亚洲精品国产精品国自产观看浪潮| 欧美黑人巨大精品一区二区| 国产精品久久国产精品99gif| 亚洲已满18点击进入在线看片| 亚洲一区美女视频在线观看免费| 在线看日韩av| 中文欧美在线视频| 亚洲欧美日韩中文在线制服| 欧美裸体视频网站| 精品福利樱桃av导航| 日本久久久久久| 6080yy精品一区二区三区|