MTK狀態列相關資料

2021-05-24 04:54:15 字數 2300 閱讀 3268

1.1 狀態列

狀態列包含電池電量指示,訊號指示,日期時間顯示,運營商名字和各個狀態圖示顯示。

電池電量顯示:

圖示id為status_icon_battery_strength

位於mainlcd/idlescreen/statusicons/battery 注意的是圖示保證5幀。關於電量顯示的控制位於

檔案poweroncharger.c

函式batterystatusindication 根據當前的電量值設定顯示的幀數。

該圖示在狀態列的座標

wgui_status_icons.c---函式arrange_status_icons()

mmi_status_icons[status_icon_battery_strength].y = 0;

mmi_status_icons[status_icon_battery_strength].x=220;

訊號指示圖示:

圖示id 為 status_icon_signal_strength

位於mainlcd/idlescreen/statusicons/signal

檔案 networkfunctions.c

函式changestatusiconlevel根據當前的訊號值設定顯示的幀數。

該圖示在待機介面的座標:

檔案wgui_status_icons.c---函式arrange_status_icons()

mmi_status_icons[status_icon_signal_strength].y = 0;

mmi_status_icons[status_icon_signal_strength].x=3;

時間和日期:

檔案:wgui_datetime.c

函式:show_main_lcd_date_time.設定日期,星期,時間的顯示座標。

注意的是:在函式hide_main_lcd_date_time中需要根據前面各個物件的座標重新設定重新整理區域的座標。並且修改wgui_categories_idlescreen.c下面的三個函式的註冊函式(之前遮蔽的)

set_main_lcd_dt_date_hide_function(cat33_hide_date_display);

set_main_lcd_dt_time_hide_function(cat33_hide_time_display);

set_main_lcd_day_hide_function(cat33_hide_day_string_display);

為了正確的顯示時間格式(使用者選擇12小時制,會增加am/pm兩個字母),在函式show_main_lcd_date_time. 時間顯示的clip的地方增加格式判斷 phnsetgettimeformat()。根據所返回的時間格式,設定clip區域。

網路運營商

檔案:wgui_categories_idlescreen.c

函式idle_screen_show_network_details() 調整網路運營商的名字座標

狀態圖示

狀態圖示包括訊息接受提示,情景模式,外部電池等。圖示的排列位於:

檔案:wgui_status_icons.c

函式:arrange_status_icons()

位於**段:

x-=mmi_status_icons[k].width status_icon_x_gap;

實現圖示自右向左的排列。每當有新的狀態產生,圖示就向左移動排列。

1.2  快捷鍵

設定待機介面上各個快捷方式的座標以及響應函式

檔案wgui_categories_idlescreen.c

函式setup_touch_idle_screen_shortcut。通過該函式設定各個快捷鍵圖示的座標以及各自的響應函式。

檔案 shortcuts.c

修改如下函式:

shctexecuteupkey 功能修改為按鍵上移,高亮快捷鍵第乙個圖示或者動態列表項

shctexecutedownkey功能修改為按鍵下移,高亮快捷鍵第乙個圖示或者動態列表項

shctexecuteleftkey功能修改為按鍵左移,高亮左邊模組,如果已經是第乙個,則高亮最後乙個

shctexecuterightkey功能修改為按鍵右移,高亮右邊模組,如果已經是最後個,則高亮第乙個

函式shctexecuteokkey 根據高亮的快捷鍵,進入對應的模組。

檔案mmi_features_guipluto.h

mmi_features_gui.h

可以開啟或關閉是否顯示shortcut的巨集

__mmi_touch_idlescreen_shortcuts__。

iOS狀態列相關操作

狀態列是一件很坑爹的事情,一不弄不好就會出現你不想要的結果。ios 9 修改狀態列的顏色在 ios 9 之前我們會這樣做 然後通過以下 去控制狀態列的顏色 void statusbarcolorwhite bool iswhite 複製 這種方式操作起來比較簡便。ios 9 之後 在 ios 9 之...

Android透明狀態列 沉浸式狀態列

注意 android版本 4.4此方法有效 第一步 在activity的布局檔案中,根布局中加入以下第5 7行 第二步 新建類kitkatutils.class package cn.powerthink.djt.utils import android.annotation.suppresslin...

android 狀態列浸透 狀態列半透明

純 設定,不用修改manifest 首先這是主介面.xml 兩種情況 第一種 去掉xml中 style 效果 主介面置頂,可以實現半透明效果 activity oncreat 中 狀態列沉浸,4.4 生效 if build.version.sdk int build.version codes.ki...