说明:收录全网最新的团体标准 提供单次或批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210105416.4 (22)申请日 2022.01.28 (71)申请人 深圳TCL新技术有限公司 地址 518052 广东省深圳市南 山区西丽 街 道中山园路10 01号国际E城D4栋9 楼 (72)发明人 王芳  (74)专利代理 机构 深圳紫藤知识产权代理有限 公司 44570 专利代理师 吴莉莉 (51)Int.Cl. G06F 9/4401(2018.01) G06F 9/451(2018.01) G06F 9/48(2006.01) G06F 9/50(2006.01) (54)发明名称 界面绘图方法、 装置、 计算机设备和存储介 质 (57)摘要 本申请涉及一种界面绘图方法、 装置、 计算 机设备和存储介质, 该方法包括 : 实例化 C u s t o m S u r f a c e V i e w 子 类 ,得 到 C u s t o m S u r f a c e V i e w 对 象 ,其 中 , CustomSurfaceView子类继承于SurfaceView类; 通 过 线 程 池 管 理 器 创 建 线 程 池 ;根 据 CustomSurfaceView对象, 创建并提交绘制任 务; 通过线程池管理器在线程池中创建绘制线程; 通 过线程池管理器调度绘制线程执行绘制任务得 到绘制结果; 提交并显示绘制结果。 采用本方法 能够有效解决现有技术中高频刷新界面严重卡 顿甚至丢帧的问题, 使得复杂界面的绘制更流 程, 高效实现 绘制任务。 权利要求书2页 说明书15页 附图2页 CN 114443153 A 2022.05.06 CN 114443153 A 1.一种界面绘图方法, 其特 征在于, 所述方法包括: 实例化CustomSurfaceView子类, 得到CustomSurfaceView对象, 其中, 所述 CustomSurfaceView子类继承于SurfaceView类; 通过线程池管理器创建线程池; 根据所述CustomSurfaceView对象, 创建并提交绘制任务, 其中, 所述绘制任务包括不 同绘制区域所对应的绘制任务, 且所述不同绘制区域所对应的绘制任务包括 非周期性绘制 任务和周期性绘制任务; 通过所述线程池管理器在所述线程池中创建用于执 行所述绘制任务的绘制线程; 通过所述线程池管理器调度对应的绘制线程执 行对应的绘制任务得到绘制结果; 提交并显示所述绘制结果。 2.根据权利要求1所述的方法, 其特征在于, 所述通过所述线程池管理器在所述线程池 中创建用于执 行所述绘制任务的绘制线程, 包括: 通过暴露的线程管理接口, 接收线程的配置参数; 通过线程池管理器根据线程管理规则和所述线程的配置参数在所述线程池中创建执 行不同绘制任务所需要的至少一种绘制线程。 3.根据权利要求2所述的方法, 其特征在于, 所述通过线程池管理器根据线程管理规则 和所述线程的配置参数在所述线程池中创建执行不同绘制任务所需要的至少一种绘制线 程, 包括: 通过线程池管理器根据线程管理规则和所述线程的配置参数创建用于执行周期性绘 制任务的第一绘制线程并设置每个所述第一绘制线程所对应的执行频率, 以及创建用于执 行非周期性绘制任务的第二绘制线程; 所述通过所述线程池管理器调度对应的绘制线程执行对应的绘制任务得到绘制结果, 包括: 根据对应的执行频率周期性唤醒并调用对应的第一绘制线程执行对应的周期性绘制 任务; 在周期性绘制任务执 行结束后, 将所述周期性绘制任务回收至任务池; 调用对应的第二绘制线程执 行对应的非周期性绘制任务。 4.根据权利要求1所述的 方法 , 其特征在于 , 所述方法还包括 : 获取所述 CustomSurfaceView对象的SurfaceHolder对象, 注册所述SurfaceHolder对象的 SurfaceHo lder.Cal lback接口; 所述调度对应的绘制线程执 行对应的绘制任务得到绘制结果, 包括: 通过对应的绘制线程调用Sur faceHolder.Callback接口中的Sur faceCreated函数创 建为所述CustomSurfaceView对象独立所有的绘图表面Surface, 通过所述绘制线程调用所述Sur faceHolder对 象的holder.lockCanvas接口获取并锁 定所述绘图表面Surface持有的画 布对象Canvas, 通过所述绘制线程从原生缓冲区获取目标像素数据, 根据 预设绘制规则将所述目标像 素数据绘制于所述画布对象Canvas中, 以更改绘图表 面Surface中的数据, 所述绘制规则包 括绘制图像的大小、 形状、 颜色、 位置 。 5.根据权利要求4所述的方法, 其特征在于, 所述通过所述绘制线程调用所述 SurfaceHolder对象的holder.lockCanvas接口获取并锁定所述绘图表面S urface持有的画权 利 要 求 书 1/2 页 2 CN 114443153 A 2布对象Canvas, 包括: 通过所述绘制线程根据预设绘制规则创建Rect对象, 将所述Rect对象传入所述 SurfaceHo lder对象持有的ho lder.lockCanvas接口, 通过所述绘制线程调用所述holder.lockCanvas接口获取并锁定所述绘图表面 Surface持有的画布对象Canv as, 并通过所述Rect对象标识所述画布对象Canv as的绘制矩 形区域; 所述根据预设绘制规则将所述目标像素数据绘制于所述画布对象Canvas中, 包括: 根 据预设绘制规则将所述目标像素 数据绘制于所述画 布对象Canvas中的绘制矩形区域。 6.根据权利要求 4所述的方法, 其特 征在于, 所述 提交并显示所述绘制结果, 包括: 完成绘制后, 调用所述绘制线程执行holder.unlockCanvasAndPost结束锁定所述画布 对象Canvas, 得到绘制结果, 向显示单元提交所述绘图表面Surface的变化以进行显示, 其 中, 所述绘制结果缓存于所述绘图表面Surface中。 7.根据权利要求1 ‑6任一项所述 的方法, 其特征在于, 所述CustomSurfaceView子类为 通过在继承SurfaceView类的基础上引用线程池管理器、 注册线程管理接口并进行封装而 成的一个集线程创建管理和绘制功能的类。 8.一种界面绘图装置, 其特 征在于, 所述装置包括: 实例化模块, 用于实例化CustomSurfaceView子类, 得到CustomSurfaceView对象, 其 中, 所述CustomSurfaceView子类继承于SurfaceView类; 线程池创建模块, 用于通过线程池管理器创建线程池; 任务创建提交模块, 用于根据所述CustomSurfaceView对象, 创建并提交绘制任务, 其 中, 所述绘制任务包括不同绘制区域所对应的绘制任务, 且所述不同绘制区域所对应的绘 制任务包括非周期性绘制任务和周期性绘制任务; 线程创建模块, 用于通过所述线程池管理器在所述线程池中创建用于执行所述绘制任 务的绘制线程; 绘制模块, 用于通过所述线程池管理器调度 所述绘制线程执行所述绘制任务得到绘制 结果; 显示模块, 用于提交并显示所述绘制结果。 9.一种计算机设备, 包括存储器和处理器, 所述存储器存储有计算机程序, 其特征在 于, 所述处 理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。 10.一种计算机可读存储介质, 其上存储有计算机程序, 其特征在于, 所述计算机程序 被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。权 利 要 求 书 2/2 页 3 CN 114443153 A 3

.PDF文档 专利 界面绘图方法、装置、计算机设备和存储介质

文档预览
中文文档 20 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共20页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 界面绘图方法、装置、计算机设备和存储介质 第 1 页 专利 界面绘图方法、装置、计算机设备和存储介质 第 2 页 专利 界面绘图方法、装置、计算机设备和存储介质 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 11:29:11上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。