下载此文档

MTK一些有用的层函数.doc


文档分类:办公文档 | 页数:约3页 举报非法文档有奖
1/3
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/3 下载此文档
文档列表 文档介绍
MTK常用的一些层函数MTK的层在窗口设计中应用十分广泛,对于UI来说,没有一个窗口不是由层构成的,最基本的窗口至少也是在基层上设计的。以至于许多时候,如果对层不甚了解,连阅读代码有时也会遇到困难。我曾经写过一些有关层的使用的基础知识,由于有关这方面资料很少,许多时候只能在模拟器上打断点自己慢慢研究。层可以在模拟器中调试,在模拟器上的TOOL菜单中的InfoMonitor功能窗口,可以看到当前窗口由哪些层和各个层显示的内容,但不包括你虽然创建了,但没有调用函数gdi_layer_blt或者与他gdi_layer_blt相类似函数刷到窗口上的层。处理PNG有关的函数gdi_push_and_set_alpha_blending_source_layergdi_pop_and_set_alpha_blending_source_layergdi_set_alpha_blending_source_layergdi_get_alpha_blending_source_layer这一组函数是在层上绘制PNG图片时使用,是PNG函数的专用函数,可以有效还原PNG图片的效果,前两个函数是成对使用,后一个函数作用同前两个,但使用上更自由一些,如果超过两个层,每个层都要画PNG,无疑使用gdi_set_alpha_blending_source_layer更加方便。最后一个是获取BLENDING层。设置层的位置gdi_layer_set_position如果层上的数据是经过十分复杂的运算过程得出来的,比如要在IDLE上显示一个可以使用手指移动的农历是日历,这时就可以在层上画好要显示的数据,通话移动层的位置实现移动效果,要比每次重绘日历要快捷的多。合并到BASE层gdi_layer_flatten_previous_to_base类似的函数还有gdi_layer_flatten前者是把当前窗口数据合并到基层,后者是把指定的层合的激活层上,该函数常常在退出窗口时使用,如果你见有些窗口在弹出对话框时该窗口背景突然消失,那大约就是因为未使用该函数的原因。因为MTK的很多窗口都不是单一层,更关键的是在创建新窗口时有时会释放老窗口的层资源,导到在老窗口非基层的显示数据丢失。该函数使用我们可以使用超过四个层来创建更为复杂的效果。添加DM层dm_add_blt_layer有时你创建了层,激活了层,在层上也绘上了图片,也调用刷屏函数了,但你总是看不到屏上显示你的层,在模拟器中的InfoMonitor窗口也看不到你的层,有时是你的层闪了一下就没影了,这时你就要研究dm_redraw_category_screen了,该函数做为大部分窗口的刷新函数,当窗口有变化时,就会执行该函数,而该函数中有一段类似如下的函数调用:gdi_layer_blt(dm_layers[0],dm_layers[1],dm_layers[2],dm_layers[3],,,--1,--1);该调用会重新刷屏,很遗憾的是,你新创建的层不在数组dm_layers中,也就不在他刷新的范围内。要么调用dm_

MTK一些有用的层函数 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数3
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xxj165868
  • 文件大小0 KB
  • 时间2016-02-28