Android 的GUI 系统

 Android 的GUI系统由C语言框架和JAVA 语言框架组成的。

       如图:

      

      

1. Android 的GUI系统的C语言框架包括:

       1)PixelFlinger (下层的工具库) 该库提供像素级别的基本处理,如像素格式定义、画点、线、多边形、纹理颜色填充以及多层处理等操作接口,PixelFlinger 的头文件 和 源代码分别在 system/core/include/pixelflinger/  、 system/core/libpixelflinger/

       2)libui (GUI的框架库)它不仅是显示中枢而且是Android GUI 系统的中枢。改库提供了包括颜色格式,Egl窗口(用于显示)、按键及事件处理、Surface(显示界面)、Overlay(显示叠加层接口)、Camera(照相机接口)等多方面的定义。libui的头文件和源代码分别在 frameworks/base/include/ui/ 、 frameworks/base/libs/ui/;

       3)SurfaceFlinger (主要对Surface 建立、控制、管理等功能)源代码目录:frameworks/base/libs/surfaceflinger/;

       4)Skia 图形图像引擎, 该库是android 的2D系统的底层实现(图形,图像,动画,svg,文本等多方面的图形库,相当于android中图形系统的引擎),通过JNI 向java层提供图形功能接口,并且结合Surface 实现各种UI元素的功能;

       5)OpenGL 3D 引擎。android 系统使用OPenGL的标准接口来支持3D图形功能,其主要内容在frameworks/base/opengl/ 中,其中本地代码的头文件路径为:frameworks/base/opengl/include/EGL/ 、 frameworks/base/opengl/include/GLES/ ,源代码在:frameworks/base/opengl/libagl/ 、 frameworks/base/opengl/libs/  ;

       6)各种JNI (向Java层次提供接口)。

       2. Andorid 的GUI系统的JAVA框架层主要包括:

       1)android.graphics 类 (对应Skia 底层库,提供绘图接口);

       2)android.view.Surface (构建显示界面);

       3)android.view.View (各种UI元素的基类);

       4)javax.microedition.khronos.opengles (标准的OpenGL接口);

       5)android.opengl (Android 系统和OpenGL的联系层);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值