剛接觸mtk的人也許會感覺到它的主題風格很神奇,感覺只要稍微的改一些東西就可以改變使其風格
迥異,控制風格的這些東西何去何從呢?雖然不知道路徑也不會影響任何的工作,可是知道還是好一
些,畢竟心裡亮堂一些。以前曾經查過它的路徑,可是當時感覺亂亂的,後來因為有事就放在一邊了
,今天閒來無事,就找了一下,沒想到還真找到了一條路徑,不過沒有經過驗證,還請各位高手給知
道一下!
大家都知道,我們修改字型顏色,填充顏色等主題風格時只要在themecomponents.h裡找到相應的參
數改一下就行了,那麼,這些引數在那裡使用呢?我們可以在themeres.c裡找到它們的身影,在變數
theme_defaulttheme裡它們一一呈現在我們眼前,現在我們需要找theme_defaulttheme在那裡用
的了。呵呵,它還在這個檔案裡,找一下mtk_mmi_themes[max_mmi_themes],我們發現
theme_defaulttheme做為它的一員而存在(也許是僅有的一員哦)。再找下去!令我們意外的是在
乙個很陌生的檔案裡我們找到了它:resource_image_jtbl.c裡的image2ndjumptbl第三個成員就是它了。然後我們搜尋image2ndjumptbl,在standaloneres.c檔案裡的函式
void initializeresourcevariables(void)裡,我們發現這樣乙個賦值:
mmi_themes = (mmi_theme **) (image2ndjumptbl[2]);
這不就是image2ndjumptbl嗎?現在我們總算看到了一絲希望了,因為繼續找下去會來到
void wgui_init(void)這個函式,很熟悉吧,在往下看,
set_mmi_theme((mmi_theme*) mmi_themes[0]);不就是我們的目的地嗎?
廢話了這麼多,其實也就是下面這幾行:
函式或檔案 變數或語句
themecomponents.h 相應變數 ->
themeres.c theme_defaulttheme ->
themeres.c mtk_mmi_themes[max_mmi_themes] ->
resource_image_jtbl.c image2ndjumptbl ->
void initializeresourcevariables(void)
mmi_themes = (mmi_theme **) (image2ndjumptbl[2]);->
void wgui_init(void) set_mmi_theme((mmi_theme*) mmi_themes[0]);
MTK主題修改
軟體版本0852 先看wgui 的初始化,在wgui.c 檔案wgui init void 函式。裡面有 set mmi theme mmi theme mmi themes 0 gui initialize default themes 下面是一些常用主題修改時要修改的一些變數 ui filled...
Flutter中主題風格
flutter中主題風格可通過theme主題,那麼應用程式中的某些widget,就會直接使用主題的樣式。一 全域性theme theme themedata 1.亮度 brightness brightness.light,2.primaryswatch傳入不是color,而是materialcol...
Style 風格 和 Theme 主題
當你設計你的程式的時候,你可以用style 風格 和theme 主題 來統一格式化各種螢幕和ui元素。風格是乙個包含一種或者多種格式化屬性的集合,你可以將其用為乙個單位用在布局xml單個元素當中。比如,你可以定義一種風格來定義字型大小大小和顏色,然後將其用在view元素的乙個特定的例項。主題是乙個包...