一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种图片展示方法及相关设备与流程

2022-05-26 13:40:48 来源:中国专利 TAG:
1.本发明涉及图片处理
技术领域
:,尤其是涉及一种图片展示方法及相关设备。
背景技术
::2.传统方案中的图片的添加方案使用第三方或者图片的加载库区加载一个网络图片,没有做网络线程处理,即使有些第三方库做了图片处理都是将图片添加到内存中解码会额外消耗很多资源,并且这些图片库添加放在子线程,图片添加到列表中没有做一些数据处理,很容易导致内存暴增或者消耗过大。技术实现要素:3.本发明的目的在于提供一种图片展示方法,可以在展示图片的时候更加流畅,更少的消耗资源占用更少的内存,可以很好的提高用户体验。4.第一方面,本发明提供一种图片展示方法,包括以下步骤:5.获得运行回路参数;根据所述运行回路参数设置运行回路;根据需要展示的图片数据创建列表视图;通过所述运行回路对所述列表视图中的原图片数据依次进行处理;基于处理后的原图片数据获得图片信息;根据所述图片信息生成新图片数据,释放所述原图片数据;对所述新图片数据进行展示。6.可选的,所述根据所述运行回路参数设置运行回路具体包括:7.创建同类型变量组成的集合,其中,所述集合用于确定所述运行回路能够执行的最大任务数据;8.监控所述运行回路的工作状态;9.在所述监控所述运行回路的工作状态之后,所述方法还包括:10.根据获取到的所述运行回路的工作状态判断所述运行回路是否需要唤醒;11.若所述运行回路结束运行,则唤醒所述运行回路进行工作。12.可选的,所述根据所述运行回路参数设置运行回路具体包括:13.创建同类型变量组成的集合,所述集合用于确定所述运行回路能够执行的最大任务数据;14.监控所述运行回路的工作状态;15.所述监控所述运行回路的工作状态,具体包括:16.获取当前运行回路需要展示的图片数据;17.设置运行回路的运行环境,其中,所述运行环境中的第一参数为0,第二参数为所述需要展示的图片数据;18.根据所述运行回路,所述运行回路的运行环境及运行回路的模式,监控所述运行回路的工作状态。19.可选的,所述方法,还包括:20.根据获取到的所述运行回路的工作状态判断所述运行回路是否需要唤醒;21.若所述运行回路结束运行,则唤醒所述运行回路进行工作。22.可选的,在根据需要展示的图片数据创建列表视图之前,还包括:23.比较所述图片数据和预设最大任务数据阈值;24.若所述图片数据大于预设最大任务数据阈值,25.则放弃创建该图片数据的列表视图;并根据内容文件协议将所述图片数据加载;26.若所述图片数据小于或等于预设最大任务数据阈值,27.则创建该图片数据的列表视图,并将创建完成的列表视图发送至运行回路中。28.可选的,所述根据所述图片信息生成新图片数据的步骤,包括:29.根据所述图片信息获取参考图像;30.根据所述参考图像生成所述新图片数据。31.可选的,所述图片信息包括:图片的文件压缩格式、图片的颜色空间参数、图片的高度、图片的宽度、图片每行的字节数的一种或多种,其中所述图片每行的字节数所述图片的宽度的预设倍数。32.本技术实施例第二方面提供了一种图片展示装置,包括:33.控制模块:用于获得运行回路参数;还用于根据所述运行回路参数设置运行回路;根据需要展示的图片数据创建列表视图;图片处理模块:用于通过所述运行回路对所述列表视图中的待处理图片数据依次进行处理;还用于基于处理后的待处理图片数据获得图片信息;图片生成模块:用于根据所述图片信息生成处理后的图片数据,释放所述待处理图片数据;调用模块:用于根据所述图片信息生成处理后的图片数据,释放所述待处理图片数据;展示模块:用于对所述处理后的图片数据进行展示。34.综上,可以看出,本技术提供的实施例中,通过获得运行回路参数;根据所述运行回路参数设置运行回路;根据需要展示的图片数据创建列表视图;通过所述运行回路对所述列表视图中的原图片数据依次进行处理;基于处理后的原图片数据获得图片信息;根据所述图片信息生成新图片数据,释放所述原图片数据;对所述新图片数据进行展示;修改普通的图片加载方式,避免图片在内存中加载,来减少内存的占用;相对于普通的方案来说增加对图片处理任务数的控制,只有在图片处理任务数未超过运行回路能够执行的最大限度时,通过上述运行回路进行处理,用以释放内存占用,降低计算资源的消耗。同时,通过对待处理图片数据做进一步压缩处理生成内存占用较小的处理后的图片数据,并释放原有待处理图片数据,从而进一步释放内存占用,提高图片展示效率,使得图片展示过程变得更加流畅。附图说明35.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。36.图1为本发明实施例提供的一种图片展示方法流程图;37.图2为本技术实施例提供的一种可能的图片展示装置的实施例示意图;38.图3为本技术实施例提供的一种可能的电子设备的实施例示意图;39.图4为本技术实施例提供的一种可能的计算机可读存储介质的实施例示意图。具体实施方式40.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。41.请参阅图1,为本技术实施例提供的一种图片展示方法流程图,该图片展示方法具体包括:42.101、获得运行回路参数;43.根据一些实施例,运行回路是指图片加载与展示过程中对图片进行处理的程序,而运行回路参数为保证上述程序依照特定运行的程序数据。可以理解的是,为了在图片加载与展示的过程避免图片从内存中加载,需要获取图片在运行回路程序内运行时的运行回路程序数据。本技术实施例中,获得程序数据的方法可以为:定义需要处理的图片数据;定义运行回路程序的运行方式,上述程序的运行方式遵守uitableviewdatasource和uitableviewdelegate协议;定义储存程序任务的数组。44.上述图片数据为上述运行回路的运行对象,而上述运行回路有两组对象,一组是c语言的corefoundation框架的cfrunloopref对象,另一组是oc语言的fundation框架的nsrunloop对象。其中fundation框架是基于cfrunloopref的一层分装;45.主线程的runloop在程序启动的时候自动创建好了,子线程的runloop需要主动创建;46.上述主线程为通过uitableviewdatasource和uitableviewdelegate协议完成对上述图片进行处理;47.每条线程都有唯一的一个与上述线程对应的运行回路对象;获取上述运行回路对象的具体方式可以为:48.foundation49.[nsrunloopcurrentrunloop];[0050]获得当前线程的运行回路对象;[0051][nsrunloopmainrunloop];[0052]获得主线程的runloop对象;[0053]corefoundation[0054]cfrunloopgetcurrent();[0055]获得当前线程的runloop对象;[0056]cfrunloopgetmain();[0057]获得主线程的runloop对象。[0058]在viewdidload的方法里面,对运行回路进行设置,上述运行回路是操作系统层面的操作,常规的方案不对运行回路进行控制。通过定义储存程序任务的数组,从而使得运行回路的最大任务数可以得到控制,通过addtask函数进行完成对列表的视图添加操作,保证了对运行的任务数进行控制。[0059]102、根据上述运行回路参数设置运行回路;[0060]在得到运行回路参数后,即得到程序数据后,将程序数据设置在程序内,具体地,根据上述储存程序任务的数组数,设置程序的最大任务数,[0061](void)addtask:(runloopblock)un{[0062][self.tasksaddobject:u];[0063]并比较需要处理的图片数据与上述最大任务数;[0064]if(self.tasks.count》count){[0065][self.tasksremoveobjectatindex:0]};[0066]根据上述程序的运行方式监控程序的工作状态;[0067]其中,tasks.count代表的是图片数据,count代表的是预设最大任务数据阈值;[0068]若上述图片数据大于预设最大任务数据阈值,[0069]则放弃创建该图片数据的列表视图;如果有大图片使用contentsoffile来进行加载;[0070]通过[0071][self.tasksremoveobjectatindex:0];[0072]将大于最大任务数的图片数据删除;[0073]若上述图片数据小于或等于预设最大任务数据阈值,[0074]则创建该图片数据的列表视图,并将创建完成的列表视图发送至运行回路中。[0075]比较上述图片数据和预设最大任务数据阈值,筛选出运行回路可以处理的图片数据,将图片数据大于预设最大任务数据阈值的图片数据剔除,避免图片数据大于预设最大任务数据阈值的图片数据进入上述运行回路,影响上述运行回路运行。[0076]通过[nsmutablearrayarray]方法创建同类型变量组成的集合,上述集合用于确定上述运行回路能够执行的最大任务数据;[0077]监控上述运行回路的工作状态。[0078]通过对运行回路工作状态的监控,能够根据上述运行回路的工作状态判断是否需要对运行回路进行处理。[0079]具体包括:[0080]使用函数cfrunloopgetcurrent获取当前运行回路需要展示的图片数据;[0081]设置运行回路的运行环境,上述运行环境中的第一参数为0,第二参数为上述需要展示的图片数据;[0082]根据上述运行回路,上述运行回路的运行环境,运行回路的模式,监控上述运行回路的工作状态,可以避免上述运行回路的工作状态异常时上述运行回路继续运行所带来的影响。[0083]根据获取到的上述运行回路的工作状态判断上述运行回路是否需要唤醒;[0084]若上述运行回路结束运行,则唤醒上述运行回路进行工作,提高运行回路的流畅性,具体为:在源程序中添加定时程序;[0085]timer=[nstimerscheduledtimerwithtimeinterval:0.001target:selfselector:@selector(_timerfiredmethod:)userinfo:nilrepeats:yes];[0086]其中,timer为一个空的定时器,保持一个运行回路的持续运行。[0087]在实际的c程序中,一个模块执行多个操作是很常见的事情。如果多个操作同时进行,会出现程序效率低下、计算机cpu占用率过高等情况,这时就需要对所有操作的执行顺序作一个合理的安排,这就涉及到定时器的使用,本例中所述定时器用于根据获取到的上述运行回路的工作状态,对上述运行回路进行唤醒,使上述运行回路在处理完当前任务后无停顿地进行下一个任务,提高了上述运行回路的运行效率。[0088]103、根据需要展示的图片数据创建列表视图;[0089]在完成对程序的设置后,设置后的程序调用父类的viewdidload方法,通过uitableview内存分配方法创建列表视图,同时设置上述列表视图的数据来源和代理方式,这样列表视图就继承图片数据的属性,上述程序对列表视图的添加操作是通过addtask函数进行的,这样可以保证,对运行的任务数进行控制,通过最大并发任务控制,可以降低内存占用并提高图片展示的流畅性。[0090]上述程序构建列表视图的函数为createtable,上述函数createtable没有参数,也没有返回值,为一个功能函数,具体为:[0091]tableview[0092][[uitableviewalloc]initwithframe:self.view.bounds[0093]style:uitableviewstyleplain];[0094]上述函数createtable创建完毕之后,需要对每一个列表进行渲染,在列表渲染的时候调用函数cellforrowatindexpath,将每次添加在设备上元素的操作设计为一个区组,将所述区组存储到任务数组中。[0095]通过将所述区组存储到任务数组中,减少了对内存的消耗,加快了数据提取的效率。[0096]104、通过上述运行回路对上述列表视图中的原图片数据依次进行处理;[0097]得到根据需要展示的图片数据创建的列表视图后,上述程序使用函数:cfrunloopgetcurrent,获取当前上述程序进行处理的图片数据,并根据所获得的图片数据定义图片数据的上下文,定义图片数据上下文的参数为:第一个参数没有实质性意义为0,第二个参数为持有这个上下文的程序,并通过指针展示和释放上述图片数据的上下文。[0098]定义上述图片数据的上下文需要多个参数,其中,第一个参数无意义传0,第二个参数是持有上述上下文的运行回路,需要将当前的控制信息传递进去,并且此处传递的是指针,即传递retain和release指针,上述两个指针分别用来展示和释放上下文。[0099]常规的方案不对运行回路进行控制,而本方法在操作系统层面进行改进,通过上述图片数据的上下文缓解在图片展示时的内存压力。[0100]105、基于处理后的原图片数据获得图片信息;[0101]上述程序调用cgimg方法拿到这个原图片数据的文件格式,引用这个图片是一个cgimgref类型的;[0102]上述程序根据所得的原图片数据的文件格式,通过colorspaceimg函数获取原图片数据的颜色空间参考;[0103]上述程序根据列表视图的属性,通过getwidth函数获取原图片数据参考的宽度,使用getheight函数获取原图片数据的高度;[0104]上述根据原图片数据的宽度,将上述宽度乘以一个倍数,例如,上述倍数取值可以为4,得到原图片数据每行的字节数。[0105]根据上述原图片数据得到获取上述原图片数据的参数,而原图片数据的参数相对比原图片数据,上述原图片数据的参数所占用的内存更小,对图片进行处理时,选择对原图片数据的参数进行处理,缓解了内存压力。[0106]106、根据上述图片信息生成新图片数据,释放上述原图片数据;[0107]在一些示例中,上述程序通过函数cgbitmapctx创建原图片数据的上下文,并根据原图片数据的上下文通过ctxdraw函数对原图片数据进行绘制,得到图像参考,根据上述图像参考通过bitmapctxcreate函数生成新的图像参考,根据新的图像参考通过imgwithcgimg函数生成新图片数据;上述程序调用release函数进行内存释放,将原图片数据释放。[0108]生成新图片数据,将存储在内存的原图片数据释放,缓解了内存压力,提高了图片展示性能,在图像数据进行展示之前对原图像数据进行转码,和处理,进一步提高图像的显示性能。[0109]107、对上述新图片数据进行展示,以达到图片展示目的。[0110]综上,本技术提供的图片展示方法,通过获得运行回路参数;根据所述运行回路参数设置运行回路;根据需要展示的图片数据创建列表视图;通过所述运行回路对所述列表视图中的原图片数据依次进行处理;基于处理后的原图片数据获得图片信息;根据所述图片信息生成新图片数据,释放所述原图片数据;对所述新图片数据进行展示;修改普通的图片加载方式,避免图片在内存中加载,来减少内存的占用;相对于普通的方案来说增加对图片处理任务数的控制,只有在图片处理任务数未超过运行回路能够执行的最大限度时,通过上述运行回路进行处理,用以释放内存占用,降低计算资源的消耗。同时,通过对待处理图片数据做进一步压缩处理生成内存占用较小的处理后的图片数据,并释放原有待处理图片数据,从而进一步释放内存占用,提高图片展示效率,使得图片展示过程变得更加流畅。[0111]上面对本技术实施例中图片展示方法进行了描述,下面对本技术实施例中的图片展示装置进行描述。[0112]请参阅图2,在本技术中图片展示装置的一个实施例,该图片展示装置包括:[0113]201、控制模块:用于获得运行回路参数;还用于根据所述运行回路参数设置运行回路;还用于根据需要展示的图片数据创建列表视图;[0114]在一些示例中,定义需要处理的图片数据;定义程序的运行方式,上述程序的运行方式遵守uitableviewdatasource和uitableviewdelegate协议;定义储存程序任务的数组。在得到运行回路参数后,即得到程序数据后,将程序数据设置在程序内,具体地,根据上述储存程序任务的数组数,设置程序的最大任务数,并比较需要处理的图片数据与上述最大任务数;根据上述程序的运行方式监控程序的工作状态;创建同类型变量组成的集合,上述集合用于确定上述运行回路能够执行的最大任务数据;监控上述运行回路的工作状态:获取当前运行回路需要展示的图片数据;设置运行回路的运行环境,上述运行环境中的第一参数为0,第二参数为上述需要展示的图片数据;根据上述运行回路,上述运行回路的运行环境,运行回路的模式,监控上述运行回路的工作状态。[0115]202、图片处理模块:用于通过所述运行回路对所述列表视图中的待处理图片数据依次进行处理;还用于基于处理后的待处理图片数据获得图片信息;[0116]得到根据需要展示的图片数据创建的列表视图后,上述程序使用函数:cfrunloopgetcurrent,获取当前上述程序进行处理的图片数据,并根据所获得的图片数据定义图片数据的上下文,定义图片数据上下文的参数为:第一个参数没有实质性意义为0,第二个参数为持有这个上下文的程序,并通过指针展示和释放上述图片数据的上下文。[0117]203、图片生成模块:用于根据所述图片信息生成处理后的图片数据,释放所述待处理图片数据;[0118]调用cgimg方法拿到这个原图片数据的文件格式,引用这个图片的引用是一个cgimgref类型的;[0119]根据所得的原图片数据的文件格式,通过colorspaceimg函数获取原图片数据的颜色空间参考;[0120]根据列表视图的属性,通过getwidth函数获取原图片数据参考的宽度,使用getheight函数获取原图片数据的高度;[0121]根据原图片数据的宽度,将上述宽度乘以一个倍数,上述倍数取值为4,得到原图片数据每行的字节数;[0122]通过函数cgbitmapctx创建原图片数据的上下文,并根据原图片数据的上下文通过ctxdraw函数对原图片数据进行绘制,得到图像参考,根据上述图像参考通过bitmapctxcreate函数生成新的图像参考,根据新的图像参考通过imgwithcgimg函数生成新图片数据。[0123]204、调用模块:用于根据所述图片信息生成处理后的图片数据,释放所述待处理图片数据。[0124]205、展示模块:用于加载展示上述新图片数据。[0125]所述控制模块还用于所述运行回路参数设置运行回路;[0126]若上述运行回路结束运行,则唤醒上述运行回路进行工作,具体为:在源程序中添加定时程序;[0127]timer=[nstimerscheduledtimerwithtimeinterval:0.001target:selfselector:@selector(_timerfiredmethod:)userinfo:nilrepeats:yes];[0128]控制模块还包括:[0129]比较上述图片数据和预设最大任务数据阈值;具体为:[0130]if(self.tasks.count》count){[0131][self.tasksremoveobjectatindex:0]};[0132]若上述图片数据大于预设最大任务数据阈值,[0133]则放弃创建该图片数据的列表视图;如果有大图片使用contentsoffile来进行加载;[0134]若上述图片数据小于或等于预设最大任务数据阈值,[0135]则创建该图片数据的列表视图,并将创建完成的列表视图发送至运行回路中。[0136]上述程序构建列表视图的函数为createtable,上述函数createtable没有参数,也没有返回值,为一个功能函数,具体为:[0137]tableview[0138][[uitableviewalloc]initwithframe:self.view.bounds[0139]style:uitableviewstyleplain];[0140]上述函数createtable创建完毕之后,需要对每一个列表进行渲染,在列表渲染的时候调用函数cellforrowatindexpath。[0141]请参阅图3,图3为本技术实施例提供的电子设备的实施例示意图。[0142]如图3所示,本技术实施例提供了一种电子设备,包括存储器310、处理器320及存储在存储器320上并可在处理器320上运行的计算机程序311,处理器320执行计算机程序311时实现以下步骤:获得运行回路参数;根据上述运行回路参数设置运行回路;根据需要展示的图片数据创建列表视图;通过上述运行回路对上述列表视图中的待处理图片数据依次进行处理;基于处理后的待处理图片数据获得图片信息;根据上述图片信息生成处理后的图片数据,释放上述待处理图片数据;对上述处理后的图片数据进行展示。[0143]可选的,在一种可能的实施例中,所述处理器320具体用于:设置运行回路的步骤,具体包括:[0144]通过[nsmutablearrayarray]方法创建同类型变量组成的集合,上述集合用于确定上述运行回路能够执行的最大任务数据;[0145]监控上述运行回路的工作状态。[0146]可选的,在一种可能的实施例中,所述处理器320具体用于:监控上述运行回路的工作状态的步骤,具体包括:[0147]使用函数cfrunloopgetcurrent获取当前运行回路需要展示的图片数据;[0148]设置运行回路的运行环境,上述运行环境中的第一参数为0,第二参数为上述需要展示的图片数据;[0149]根据上述运行回路,上述运行回路的运行环境,运行回路的模式,监控上述运行回路的工作状态。[0150]可选的,在一种可能的实施例中,所述处理器320具体用于:[0151]根据获取到的上述运行回路的工作状态判断上述运行回路是否需要唤醒;[0152]若上述运行回路结束运行,则唤醒上述运行回路进行工作,提高运行回路的流畅性,具体为:在源程序中添加定时程序;[0153]timer=[nstimerscheduledtimerwithtimeinterval:0.001target:selfselector:@selector(_timerfiredmethod:)userinfo:nilrepeats:yes];[0154]其中,timer为一个空的定时器,保持一个运行回路的持续运行。[0155]可选的,在一种可能的实施例中,所述处理器320具体用于:[0156]比较上述图片数据和预设最大任务数据阈值;具体为:[0157]if(self.tasks.count》count){[0158][self.tasksremoveobjectatindex:0]};[0159]若上述图片数据大于预设最大任务数据阈值,[0160]则放弃创建该图片数据的列表视图;如果有大图片使用contentsoffile来进行加载;[0161]若上述图片数据小于或等于预设最大任务数据阈值,[0162]则创建该图片数据的列表视图,并将创建完成的列表视图发送至运行回路中。[0163]上述创建该图片数据的列表视图时,上述程序构建列表视图的函数为createtable,上述函数createtable没有参数,也没有返回值,为一个功能函数,具体为:[0164]tableview[0165][[uitableviewalloc]initwithframe:self.view.bounds[0166]style:uitableviewstyleplain];[0167]上述函数createtable创建完毕之后,需要对每一个列表进行渲染,在列表渲染的时候调用函数cellforrowatindexpath,将每次添加在设备上元素的操作设计为一个区组,将所述区组存储到任务数组中。[0168]由于本实施例所介绍的电子设备为实施本技术实施例中一种图片展示装置所采用的设备,故而基于本技术实施例中所介绍的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本技术实施例中的方法不再详细介绍,只要本领域所属技术人员实施本技术实施例中的方法所采用的设备,都属于本技术所欲保护的范围。[0169]请参阅图4,图4为本技术实施例提供的一种计算机可读存储介质的实施例示意图。[0170]如图4所示,本实施例提供了一种计算机可读存储介质400,其上存储有计算机程序411,该计算机程序411被处理器执行时实现如下步骤::获得运行回路参数;根据上述运行回路参数设置运行回路;根据需要展示的图片数据创建列表视图;通过上述运行回路对上述列表视图中的待处理图片数据依次进行处理;基于处理后的待处理图片数据获得图片信息;根据上述图片信息生成处理后的图片数据,释放上述待处理图片数据;对上述处理后的图片数据进行展示。[0171]可选的,在一种可能的实施例中,该计算机程序411被处理器执行时具体用于实现如下步骤:设置运行回路的步骤,具体包括:[0172]通过[nsmutablearrayarray]方法创建同类型变量组成的集合,上述集合用于确定上述运行回路能够执行的最大任务数据;[0173]监控上述运行回路的工作状态。[0174]可选的,在一种可能的实施例中,该计算机程序411被处理器执行时具体用于实现如下步骤:监控上述运行回路的工作状态,具体包括:[0175]使用函数cfrunloopgetcurrent获取当前运行回路需要展示的图片数据;[0176]设置运行回路的运行环境,上述运行环境中的第一参数为0,第二参数为上述需要展示的图片数据;[0177]根据上述运行回路,上述运行回路的运行环境,运行回路的模式,监控上述运行回路的工作状态。[0178]在一种可能的实施方式中,上述方法,还包括:[0179]根据获取到的上述运行回路的工作状态判断上述运行回路是否需要唤醒;[0180]若上述运行回路结束运行,则唤醒上述运行回路进行工作,提高运行回路的流畅性,具体为:在源程序中添加定时程序;[0181]timer=[nstimerscheduledtimerwithtimeinterval:0.001target:selfselector:@selector(_timerfiredmethod:)userinfo:nilrepeats:yes];[0182]其中,timer为一个空的定时器,保持一个运行回路的持续运行。[0183]可选的,在一种可能的实施例中,该计算机程序411被处理器执行时具体用于实现如下步骤:在根据需要展示的图片数据创建列表视图之前,还包括:[0184]比较上述图片数据和预设最大任务数据阈值;具体为:[0185]if(self.tasks.count》count){[0186][self.tasksremoveobjectatindex:0]};[0187]若上述图片数据大于预设最大任务数据阈值,[0188]则放弃创建该图片数据的列表视图;如果有大图片使用contentsoffile来进行加载;[0189]若上述图片数据小于或等于预设最大任务数据阈值,[0190]则创建该图片数据的列表视图,并将创建完成的列表视图发送至运行回路中。[0191]可选的,在一种可能的实施例中,该计算机程序411被处理器执行时具体用于实现如下步骤:上述程序构建列表视图的函数为createtable,上述函数createtable没有参数,也没有返回值,为一个功能函数,具体为:[0192]tableview[0193][[uitableviewalloc]initwithframe:self.view.bounds[0194]style:uitableviewstyleplain];[0195]上述函数createtable创建完毕之后,需要对每一个列表进行渲染,在列表渲染的时候调用函数cellforrowatindexpath,将每次添加在设备上元素的操作设计为一个区组,将所述区组存储到任务数组中。[0196]在具体实施过程中,该计算机程序411被处理器执行时可以实现图1对应的实施例中任一实施方式。[0197]在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,上述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。[0198]又例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,再例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。[0199]上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。[0200]另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。[0201]上述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等各种可以存储程序代码的介质。[0202]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。[0203]最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本
技术领域
:的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献