图片加载方法、装置、电子设备及存储介质制造方法及图纸

技术编号:36907091 阅读:39 留言:0更新日期:2023-03-18 09:26
本公开实施例提供一种图片加载方法、装置、电子设备及存储介质。该图片加载方法包括:响应于显示界面中的绘图操作,在所述显示界面中向所述绘图操作提供占位控件,其中,所述占位控件用于指示所述绘图操作占据的绘图空间;在监听到所述绘图操作已完成的信息的情况下,基于所述占位控件当前指示的绘图空间,确定所述绘图操作对应的目标图片的图片缓存空间。本公开实施例,可以按照绘制图片的大小来确定其缓存大小,提高缓存的利用效率。提高缓存的利用效率。提高缓存的利用效率。

【技术实现步骤摘要】
图片加载方法、装置、电子设备及存储介质


[0001]本公开涉及显示
,尤其涉及一种图片加载方法、装置、电子设备及存储介质。

技术介绍

[0002]目前,基于Flutter开发应用时,一般都会有绘制图片或展示图片。例如,控件背景图、运营图片等。这些图片可以从本地存储、外部存储或者网络中加载到缓存中,以渲染图片。这些图片会占用应用的内存空间。对于较大型的应用,其需要的图片一般更多,则占用的内存空间也更多。这些图片内存的过多占用将影响应用的性能及用户对应用的体验感。

技术实现思路

[0003]本公开实施例提供一种图片加载方法、装置、电子设备及存储介质,以解决或缓解现有技术中的一项或更多项技术问题。
[0004]作为本公开实施例的第一个方面,本公开实施例提供一种图片加载方法,包括:
[0005]响应于显示界面中的绘图操作,在所述显示界面中向所述绘图操作提供占位控件,其中,所述占位控件用于指示所述绘图操作占据的绘图空间;
[0006]在监听到所述绘图操作已完成的情况下,基于所述占位控件当前指示的绘图空间,确定所述绘图操作对应的目标图片的图片缓存空间。
[0007]作为本公开实施例的第二个方面,本公开实施例提供一种图片加载装置,包括:
[0008]占位控件提供模块,用于响应于显示界面中的绘图操作,在所述显示界面中向所述绘图操作提供占位控件,其中,所述占位控件用于指示所述绘图操作占据的绘图空间;
[0009]缓存位置确定模块,用于在监听到所述绘图操作已完成的情况下,基于所述占位控件当前指示的绘图空间,确定所述绘图操作对应的目标图片的图片缓存空间。
[0010]作为本公开实施例的第三个方面,本公开实施例提供一种电子设备,包括:
[0011]至少一个处理器;以及
[0012]与所述至少一个处理器通信连接的存储器;其中,
[0013]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开实施例提供的图片加载方法。
[0014]作为本公开实施例的第四个方面,本公开实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行本公开实施例提供的图片加载方法。
[0015]作为本公开实施例的第五个方面,本公开实施例提供一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现本公开实施例提供的图片加载方法。
[0016]本公开实施例提供的技术方案,在绘图时向绘图操作提供一个占位控件,利用该占位控件可以获知绘图操作所占据的绘图空间,在绘图完成时,则获取占位控件当前指示的绘图空间,来确定绘图操作对应的目标图片的图片缓存空间,从而可以按照绘制图片的
大小来确定其缓存大小,提高缓存的利用效率。
[0017]上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本公开进一步的方面、实施方式和特征将会是容易明白的。
附图说明
[0018]在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本公开的一些实施方式,而不应将其视为是对本公开范围的限制。
[0019]图1是本公开一实施例的图片加载方法的流程图;
[0020]图2是本公开另一实施例的图片加载方法的流程;
[0021]图3是本公开一实施例的图片加载装置的结构框图;
[0022]图4是本公开一实施例的电子设备的结构框图。
具体实施方式
[0023]在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本公开的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
[0024]目前,基于Flutter(一种移动应用程序开发框架,Flutter是谷歌开源的构建用户界面工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台)开发应用在加载图片时通常使用如下两种方案,一种是只限制图片控件的大小而没有关注实际加载图片的大小以及其占用内存(缓存)的大小,这种情况会存在过多的占用系统内存资源,并且对实际显示效果无优化。另外一种是硬编码,即在Image Widget控件(Flutter中用于展示图片的控件,可称为图像控件)中对cacheWidth(缓存宽度)或cacheHeight(缓存高度或深度)参数直接进行参数配置,这样Flutter引擎只加载Image Widget控件所指定尺寸的图片。这种方案可以达到优化内存的目的,但是,这需要对每一张图片都要指定Image Widget控件中的缓存尺寸参数的大小,使用较不方便,效率低。因此,本公开提供一种图片加载方法,能够在不指定Image Widget控件中的缓存尺寸参数的参数值的情况下,按照图片的大小自适应地加载图片,以达到节约内存的目的。
[0025]图1是本公开一实施例的图片加载方法的流程图。如图1所示,该方法可以应用于电子设备中,该方法可以包括以下步骤:
[0026]S110,响应于显示界面中的绘图操作,在显示界面中向绘图操作提供占位控件,其中,占位控件用于指示绘图操作占据的绘图空间;
[0027]S120,在监听到绘图操作已完成的信息的情况下,基于占位控件当前指示的绘图空间,确定绘图操作对应的目标图片的图片缓存空间。
[0028]在本示例中,在绘图时向绘图操作提供一个占位控件,利用该占位控件可以获知绘图操作所占据的绘图空间,在绘图完成时,则获取占位控件当前指示的绘图空间,来确定绘图操作对应的目标图片的图片缓存空间,从而可以按照绘制图片的大小来确定其缓存大小,提高缓存的利用效率。
[0029]示例性地,显示界面可以是Flutter的绘图界面。绘图操作是指在显示界面中绘制各种图形元素或者组合各种图形元素。
[0030]示例性地,占位控件可以是自定义的控件,在检测到显示界面中的绘图操作时,即返回一个占位控件给该绘图操作,以为该绘图操作提供绘图空间。该占位控件指示的绘图空间可以是固定的预设的,以限定绘图操作的绘图操作。该占位控件指示的绘图空间可以是自适应的,随着绘图操作所占据的绘图空间的变化而变化。占位控件起到追踪绘图操作的作用。
[0031]示例性地,绘图空间可以包括绘图的位置、尺寸等信息,例如中心点位置、高度、宽度等。
[0032]示例性地,图片缓存空间可以包括图片缓存位置、图片所占的缓存大小。例如,缓存起始位置到终止位置,缓存的位宽和深度。
[0033]在本示例中,利用占位控件来追踪绘图操作所占据的空间,自动调整后续缓存该操作对应的图片的缓存大小,不必通过代码或者窗口之类对图像控制进行缓存大小的指定,即达到节省缓存的效果。<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种图片加载方法,其特征在于,包括:响应于显示界面中的绘图操作,在所述显示界面中向所述绘图操作提供占位控件,其中,所述占位控件用于指示所述绘图操作占据的绘图空间;在监听到所述绘图操作已完成的情况下,基于所述占位控件当前指示的绘图空间,确定所述绘图操作对应的目标图片的图片缓存空间。2.根据权利要求1所述的方法,其特征在于,所述基于所述占位控件当前指示的绘图空间,确定所述绘图操作对应的目标图片的图片缓存空间,包括:在检测到针对所述显示界面的刷新操作的情况下,基于所述占位控件当前指示的绘图空间的尺寸信息,配置图像控件中的缓存尺寸参数;基于所述图像控件中的缓存尺寸参数,确定所述绘图操作对应的目标图片的图片缓存空间。3.根据权利要求2所述的方法,其特征在于,还包括:在检测到针对所述显示界面的刷新操作的情况下,基于所述占位控件当前指示的绘图空间的尺寸信息,配置图像控件中的图片尺寸参数,并基于所述占位控件当前指示的绘图空间的中心位置信息,配置图像控件中的图片中心位置参数;基于所述图像控件中的图片尺寸参数和图片中心位置参数,确定所述目标图片在所述显示界面中的图片显示位置。4.根据权利要求3所述的方法,其特征在于,还包括:在所述图片缓存空间中缓存所述绘图操作对应的目标图片;从所述图片缓存空间中读取所述目标图片,并将读取的所述目标图片渲染在所述显示界面中的图片显示位置。5.根据权利要求2所述的方法,其特征在于,所述基于所述占位控件当前指示的绘图空间的尺寸信息,配置图像控件中的缓存尺寸参数,包括以下之一:在所述占位控件当前指示的绘图空间的尺寸满足设定的尺寸条件的情况下,基于所述占位控件当前指示的绘图空间的尺寸信息,配置图像控件中的缓存尺寸参数;在所述占位控件当前指示的绘图空间的尺寸不满足设定的尺寸条件的情况下,基于所述绘图空间的预设尺寸信息,配置所述图像控件的缓存尺寸参数。6.根据权利要求1至5任一项所述的方法,其特征在于,所述占位控件为透明控件。7.一种图片加载装置,其特征在于,包括:占位控件提供模块,用于响应于显示界面中的绘图操作,在所述显示界面中向所述绘图操作提供占位控件,其中,所述占位控件用于指示所述绘图操作占据的绘图空间;缓存位置确定模块,用于在监听到所述绘图操作已完成的情况下,基于所述占位控件当前指示的绘图空间,确定所述绘图操作对应的目标图片的图片缓存空间。8.根据...

【专利技术属性】
技术研发人员:卢维
申请(专利权)人:重庆京东方智慧科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1