日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

miniui

發(fā)布時間:2024/6/21 综合教程 32 生活家
生活随笔 收集整理的這篇文章主要介紹了 miniui 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

//android提供了一個庫minui用于簡單的UI輸出,源碼在bootable/recovery/minui中,

//gr_init()和gr_font_size()為minui庫提供方法,gr_init()為UI輸出作準備,gr_font_size()獲得字體大小

gr_init();

//res_create_surface()為minui庫中提供,用于將一張圖片生成一個surface

1、gr_init()初始化圖形設(shè)備,分配Pixelflinger庫渲染的內(nèi)存

2、gr_font_size() 將字體對應(yīng)的surface長寬賦值給char_width和char_height

intgr_init(void);/*初始化圖形顯示,主要是打開設(shè)備、分配內(nèi)存、初始化一些參數(shù)*/
voidgr_exit(void);/*注銷圖形顯示,關(guān)閉設(shè)備并釋放內(nèi)存*/

intgr_fb_width(void);/*獲取屏幕的寬度*/
intgr_fb_height(void);/*獲取屏幕的高度*/
gr_pixel*gr_fb_data(void);/*獲取顯示數(shù)據(jù)緩存的地址*/
voidgr_flip(void);/*刷新顯示內(nèi)容*/
voidgr_fb_blank(boolblank);/*清屏*/

voidgr_color(unsignedcharr,unsignedcharg,unsignedcharb,unsignedchara);/*設(shè)置字體顏色*/
voidgr_fill(intx,inty,intw,inth);/*填充矩形區(qū)域,參數(shù)分別代表起始坐標、矩形區(qū)域大小*/
intgr_text(intx,inty,constchar*s);/*顯示字符串*/
intgr_measure(constchar*s);/*獲取字符串在默認字庫中占用的像素長度*/
voidgr_font_size(int*x,int*y);/*獲取當前字庫一個字符所占的長寬*/

voidgr_blit(gr_surfacesource,intsx,intsy,intw,inth,intdx,intdy);/*填充由source指定的圖片*/
unsignedintgr_get_width(gr_surfacesurface);/*獲取圖片寬度*/
unsignedintgr_get_height(gr_surfacesurface);/*獲取圖片高度*/
/*根據(jù)圖片創(chuàng)建顯示資源數(shù)據(jù),name為圖片在mk文件指定的相對路徑*/
intres_create_surface(constchar*name,gr_surface*pSurface);
voidres_free_surface(gr_surfacesurface);/*釋放資源數(shù)據(jù)*/

主程序通過dlopen()加載一個.so的動態(tài)庫文件, 然后動態(tài)庫會自動運行 _init() 初始化函數(shù), 初始化函數(shù)打印一個提示信息, 然后調(diào)用主程序的注冊函數(shù)給結(jié)構(gòu)體重新賦值, 然后調(diào)用結(jié)構(gòu)體的函數(shù)指針, 打印該結(jié)構(gòu)體的值. 這樣就充分的達到了主程序和動態(tài)庫的函數(shù)相互調(diào)用和指針的相互傳遞.

voidres_free_surface(gr_surfacesurface);/*釋放資源數(shù)據(jù)*/

總結(jié)

以上是生活随笔為你收集整理的miniui的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。