導航:首頁 > 操作系統 > android50狀態欄圖標

android50狀態欄圖標

發布時間:2023-07-12 02:00:53

『壹』 android導航欄與狀態欄顏色及透明度

首先創建一個空項目,如下圖

可以看到狀態欄是白字黑背景, 導航欄也是白圖標黑背景
嘿嘿, 我們先把狀態欄隱藏掉,在添加一個ImageView, 讓ImageView做背景(方便查看)

樣子如下:

將狀態欄和導航欄設置透明, 找到 Manifest.xml 文件, 在主題樣式中修改

android:statusBarColor 設置狀態欄背景色
android:navigationBarColor 同上
android:windowLightStatusBar 設置狀態欄文字色, true為深色, false為白色
android:windowLightNavigationBar 同上
android:windowTranslucentStatus 設置狀態欄半透明狀態, true為半透明, false為不透明
android:windowTranslucentNavigation 同上

最後兩個半透明狀態下面沒用, 可自己嘗試看效果

效果圖如下:

可以看到導航欄與狀態欄並沒有透明,原因是默認不能佔用狀態欄空間與導航欄空間,根布局背景為白色,所有這里顯示白色
可以通過設置 getWindow().getDecorView().setSystemUiVisibility() 來適配

View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN 適配狀態欄空間
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION 適配導航欄空間
效果如下:

『貳』 android notification怎麼在狀態欄顯示圖標

根據activity的生命周期,在activity不顯示時,會執行onStop函數,所以你在onStop函數(按退出鍵除外)裡面把notification放在通知欄里,再此顯示時,把notification從通知欄里去掉。
或者,只要程序在運行就一直顯示通知欄圖標,這樣簡單點。
privatevoid showNotification() {
// 創建一個NotificationManager的引用
NotificationManager notificationManager = (NotificationManager)
context.getSystemService(android.content.Context.NOTIFICATION_SERVICE);
// 定義Notification的各種屬性
Notification notification =new Notification(R.drawable.icon,
天籟之音播放器, System.currentTimeMillis());
notification.flags |= Notification.FLAG_ONGOING_EVENT; // 將此通知放到通知欄的Ongoing即正在運行組中
notification.flags |= Notification.FLAG_NO_CLEAR; // 表明在點擊了通知欄中的清除通知後,此通知不清除,經常與FLAG_ONGOING_EVENT一起使用
notification.flags |= Notification.FLAG_SHOW_LIGHTS;
notification.defaults = Notification.DEFAULT_LIGHTS;
notification.ledARGB = Color.BLUE;
notification.ledOnMS =5000;
// 設置通知的事件消息
CharSequence contentTitle =天籟之音正在播放……; // 通知欄標題
CharSequence contentText =ameyume; // 通知欄內容
Intent notificationIntent =new Intent(context, MusicDemo.class); // 點擊該通知後要跳轉的Activity
PendingIntent contentItent = PendingIntent.getActivity(context, 0,
notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText,
contentItent);
// 把Notification傳遞給NotificationManager
notificationManager.notify(0, notification);}
去掉通知欄通知的方法
// 啟動後刪除之前我們定義的通知
NotificationManager notificationManager = (NotificationManager) this

『叄』 請問下Android的狀態欄這個圖標(一個向左的箭頭,中間是三個點)是什

那個是狀態欄軟體的活動的提醒,表示有提醒

『肆』 Android設置狀態欄顏色和狀態欄文字、圖標顏色

Android開發中,經常需要實現下圖狀態欄的效果,類似於沉浸式狀態欄,但這里僅僅是討論設置狀態欄的顏色和狀態欄上面文字、圖標的顏色的方法。

Android 4.4(API 19)之後,就提供了修改狀態欄顏色的方法,但是在 Android 6.0(API 23)之後,才支持修改狀態欄上面的文字和圖標顏色,默認是白色的。所以會導致一個問題,在 4.4 到 6.0 之間的系統,狀態欄設置為淺色的話,狀態欄上面白色的文字和圖標會看不清,像下面這樣:

有一些第三方的系統提供了設置狀態欄和狀態欄文字、圖標顏色的方法,比如小米的MIUI和魅族的Flyme,所以考慮了下比較好的實現方式是:

當然,這裡面也會有坑,比如 MIUI 提供的修改狀態欄字體顏色方法會跟 Android 系統自帶的方法沖突,官方說明如下: 關於MIUI狀態欄字元顏色邏輯調整說明
經過網上的資料和自己的嘗試,MIUI 系統還是同時使用 MIUI 提供的方法和 Android 系統自帶的方法來修改狀態欄字體顏色比較保險。

基於上面的思考,封裝了設置 Android 4.4 以上系統狀態欄顏色和狀態欄字體、圖標顏色的方法:

要在 Application Theme 加上 <item name="android:fitsSystemWindows">true</item> ,不然頁面會頂到狀態欄上面,或者在 Activity 的布局裡面加上 android:fitsSystemWindows="true" 和 android:clipToPadding="false" 也可以。

最終實現的效果如下:

大家有更好的方案可以告訴我~

閱讀全文

與android50狀態欄圖標相關的資料

熱點內容
程序員如何換個城市生活 瀏覽:141
JS開發PDF 瀏覽:283
app格式不對怎麼辦 瀏覽:94
32位定時器單片機 瀏覽:332
安卓編譯不能進行下一步簽名 瀏覽:607
男生做保潔解壓視頻 瀏覽:748
qd88yg壓縮機參數 瀏覽:383
pubg國際服伺服器有什麼區別 瀏覽:504
怎麼打開文件夾自動刪除 瀏覽:683
php中英文切換 瀏覽:445
php168數據 瀏覽:77
水壓縮後有彈性 瀏覽:45
蘇州阿里雲伺服器數據備份 瀏覽:522
消息提示音怎麼設置安卓 瀏覽:279
怎麼去掉安卓手機的小圓圈 瀏覽:474
女程序員每天教你一招 瀏覽:590
葯劑學pdf下載 瀏覽:477
打開的共享文件夾少東西 瀏覽:643
芝麻黑頭解壓去除視頻 瀏覽:186
光明與黑暗怎麼進入伺服器 瀏覽:659