一种基于安卓系统的增强文本显示方法与流程

文档序号:29084467发布日期:2022-03-02 01:00阅读:90来源:国知局
一种基于安卓系统的增强文本显示方法与流程

1.本发明属于增强文本控件技术领域,尤其涉及到一种基于安卓系统的增强文本显示方法。


背景技术:

2.当前安卓系统,通常使用增强文本控件textview显示文字等信息,对附属图片的显示位置比较固定,只能支持显示在增强文本控件的left,right,top,bottom四个位置,且只能支持静态图,如png,jpg,而且整个增强文本控件只能整体响应点击事件,无法区分图片和其他部分。当前应用需求日益多样化,ui设计也越来越高度定制化,增强文本控件textview无法满足。


技术实现要素:

3.针对现有技术的以上缺陷或改进需求,本发明提供了一种基于安卓系统的增强文本显示方法,其目的在于实现增强文本控件附属图片显示大小,位置,旋转等可任意控制,且支持gif格式,也可实现图片与其他部分各自实现点击事件,灵活实现,满足日益多样化和定制化的需求。
4.一方面,本发明实施例提供了一种基于安卓系统的增强文本显示方法,包括:在增强文本控件的属性布局文件中新增自定义属性,使得所述增强文本控件支持添加与所述自定义属性对应的图片;根据所述自定义属性在所述属性布局文件中设置对应的属性参数;由所述增强文本控件进行初始化,通过属性获取文件获取所述属性布局文件中设置的所述属性参数,以及根据所述属性参数将对应的所述图片显示于所述增强文本控件。
5.在本发明的一个实施例中,所述自定义属性包括:图片是否可显示、图片是否可点击、图片显示位置、图片显示内容、图片格式和图片旋转角度中的一个或多个。
6.在本发明的一个实施例中,所述通过属性获取文件获取所述属性布局文件中设置的所述属性参数,包括:通过文件sup_drawable获取所述图片的资源id,通过文件getresources().openrawresource()获取所述图片的输入流,根据所述输入流确定对应的图片格式;通过文件sup_show判断所述图片是否可显示;通过文件sup_mode,sup_width,sup_height,sup_padding_left,sup_padding_top确定出所述图片在所述增强文本控件中的显示位置;通过文件sup_rotate获取所述图片旋转角度。
7.在本发明的一个实施例中,所述根据所述自定义属性将对应的所述图片显示于所述增强文本控件,具体包括:判断所述图片格式是否为gif图,如果判断为是,则根据所述输入流生成文件gifdrawable进行图片显示;如果判断为否,则直接通过文件getresources().getdrawable()生成文件drawable进行图片显示。
8.在本发明的一个实施例中,所述根据所述自定义属性将对应的所述图片显示于所述增强文本控件,具体包括:根据文件sup_mode确定所述图片在所述增强文本控件中的粗略位置,然后根据文件sup_mode的参数数值进行相应的计算后传入文件sup_width,sup_
height,sup_padding_left,sup_padding_top,得到所述图片在所述增强文本控件中的准确位置,通过文件drawable.setbounds()将所述图片显示于所述准确位置。
9.在本发明的一个实施例中,所述基于安卓系统的增强文本显示方法还包括:响应于用户在所述增强文本控件上操作指令,判断所述操作指令是否指向所述图片,若判断为是则执行对应的图片事件,若判断为否则执行对应的增强文本控件事件。
10.在本发明的一个实施例中,所述响应于用户在所述增强文本控件上操作指令,包括:响应于用户修改所述属性布局文件中的所述属性参数,实现对所述自定义属性的重新配置。
11.另一方面,本发明实施例提出一种显示屏亮色度一致性检测装置,包括:属性添加模块,用于在增强文本控件的属性布局文件中新增自定义属性,使得所述增强文本控件支持添加与所述自定义属性对应的图片;参数设置模块,用于根据所述自定义属性在所述属性布局文件中设置对应的属性参数;参数获取模块,用于由所述增强文本控件进行初始化,通过属性获取文件获取所述属性布局文件中设置的所述属性参数;以及图片显示模块,用于根据所述自定义属性将对应的所述图片显示于所述增强文本控件。
12.又一方面,本发明实施例提出一种显示屏亮色度一致性检测系统,包括:存储器和连接所述存储器的一个或多个处理器,存储器存储有计算机程序,处理器用于执行所述计算机程序以实现如上述中任意一个实施例所述的显示屏亮色度一致性检测方法。
13.再一方面,本发明实施例提出一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于执行如上述中任意一个实施例所述的显示屏亮色度一致性检测方法。
14.由上可知,通过本发明所构思的上述方案与现有技术相比,可以具有如下一个或多个有益效果:
15.(1)通过属性获取文件获取设置的属性参数,并根据属性参数将对应的图片显示于增强文本控件,能够实现文本控件附属图片显示大小,位置,旋转等属性参数的任意控制,满足用户对文本控件的定制化和多样化设计;通过自定义属性判断对应的图片格式,若判断为动态图格式则根据输入流生成对应格式的文件实现动态图片显示,解决了现有文本控件附属图片只能支持静态图的问题;
16.通过自定义属性判断对应的图片格式,若判断为动态图格式则根据输入流生成对应格式的文件实现动态图片显示,解决了现有文本控件附属图片只能支持静态图的问题;
17.软件执行用户操作指令时,判断该操作指令是否指向图片,若判断为是则执行对应的图片事件,若判断为否则执行对应的增强文本控件事件,能够实现文本控件的图片与其它部分各自实现点击事件,灵活控制,解决了现有文本控件只能整体响应点击事件,无法区分图片和其他部分的问题。
18.通过以下参考附图的详细说明,本发明的其他方面的特征变得明显。但是应当知道,该附图仅仅为解释的目的设计,而不是作为本发明的范围的限定。还应当知道,除非另外指出,不必要依比例绘制附图,它们仅仅力图概念地说明此处描述的结构和流程。
附图说明
19.图1为本发明实施例提供的一种基于安卓系统的增强文本显示方法的流程图;
20.图2为本发明实施例提供的一种基于安卓系统的增强文本显示方法的具体执行步骤示意图;
21.图3为本发明实施例提供的又一种基于安卓系统的增强文本显示方法的具体执行步骤示意图;
22.图4为本发明实施例提供的一种基于安卓系统的增强文本显示装置的结构示意图;
23.图5为本发明实施例提供的一种基于安卓系统的增强文本显示系统的结构示意图;
24.图6为本发明实施例提供的计算机可读存储介质的结构示意图。
25.附图标记说明
26.s11至s14:基于安卓系统的增强文本显示方法的步骤;
27.20:基于安卓系统的增强文本显示装置;201:属性添加模块;202:参数设置模块;203:参数获取模块;204:图片显示模块;
28.30:基于安卓系统的增强文本显示系统;31:处理器;32:存储器;
29.40:计算机可读存储介质。
具体实施方式
30.需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以互相组合。下面将参考附图并结合实施例来说明本发明。
31.为了使本领域普通技术人员更好地理解本发明的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例,都应当属于本发明的保护范围。
32.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等适用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应当理解这样使用的术语在适当情况下可以互换,以便这里描述的本发明实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外。术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备国有的其他步骤或单元。
33.还需要说明的是,本发明中多个实施例的划分仅是为了描述的方便,不应构成特别的限定,各种实施例中的特征在不矛盾的情况下可以相结合,相互引用。
34.【第一实施例】
35.如图1所示,本发明第一实施例提出一种基于安卓系统的增强文本显示方法,例如如下包括:步骤s11在增强文本控件的属性布局文件中新增自定义属性,使得所述增强文本控件支持添加与所述自定义属性对应的图片;步骤s12根据所述自定义属性在所述属性布局文件中设置对应的属性参数;步骤s13由所述增强文本控件进行初始化,通过属性获取文件获取所述属性布局文件中设置的所述属性参数;以及步骤s14根据所述属性参数将对应的所述图片显示于所述增强文本控件。
36.在步骤s11中,例如由搭载安卓(android)系统的上位机软件执行,在该android系
统的增强文本控件的属性布局文件中新增自定义属性,使得该增强文本控件支持添加与自定义属性对应的图片。其中,提到的增强文本控件例如继承自textview,属性布局文件例如为values/attrs.xml。提到的上位机例如为个人计算机、手持设备、便携式设备、平板型设备、多处理器系统、基于微处理器的系统、可编辑的消费电子设备、网络pc、小型计算机、大型计算机、或者包括以上任何系统或设备的分布式计算环境等等。
37.在一个实施方式中,新增的自定义属性例如包括:图片是否可显示、图片是否可点击、图片显示位置、图片显示内容、图片格式和图片旋转角度等属性类型中的一个或多个,可根据用户需求定制化设计。值得一提的是,在本技术的其它实施方式中,也可以新增其它类型的自定义属性,本发明并不以此为限制。
38.具体的,如图2所示,增强文本控件例如默认支持添加4张图片,即values/attrs.xml中已经自动新增4组自定义属性,每组包含上述自定义属性类别中的一个或多个,每组中的属性后分别添加1,2,3,4加以区分。如果有需求图片多于4张(最大例如支持10张),则可在values/attrs.xml中再新增多组自定义属性,同样每组中的属性后分别添加5,6,7,8等加以区分。
39.在步骤s12中,例如用户可以根据新增的各个自定义属性在属性布局文件xml文件中设置对应的属性参数,由上位机软件接收设置的属性参数数据,实现对自定义属性的配置。具体的,在使用时布局文件xml中加入了增强文本控件,如果需要显示图片,例如可以通过文件sup_show设置图片显示、通过文件sup_rotate设置图片旋转角度、通过文件sup_width设置图片宽度、通过文件sup_height设置图片高度等属性参数。
40.在步骤s13中,例如由上位机软件控制所述增强文本控件进行初始化,通过属性获取文件获取属性布局文件xml文件中设置的属性参数。提到的属性获取文件例如为attributeset,用于实现对属性布局文件中的各个自定义属性的属性参数进行解析提取。提取出的属性参数为xml设置值,例如通过typedarray方法进行映射,得到相应的属性数据。
41.在一个实施方式中,获取属性布局文件中设置的属性参数例如具体包括:通过文件sup_drawable获取所述图片的资源id,通过文件getresources().openrawresource()获取所述图片的输入流,根据所述输入流确定对应的图片格式;通过文件sup_show判断所述图片是否可显示;通过文件sup_mode,sup_width,sup_height,sup_padding_left,sup_padding_top确定出所述图片在所述增强文本控件中的显示位置;以及通过文件sup_rotate获取所述图片旋转角度。
42.在步骤s14中,上位机软件例如根据属性参数将对应的图片显示于增强文本控件中。在一个实施方式中,根据所述输入流确定对应的图片格式后,例如判断所述图片格式是否为gif图,如果判断为是,则根据所述输入流生成文件gifdrawable进行图片显示;如果判断为否,则直接通过文件getresources().getdrawable()生成文件drawable进行图片显示。
43.进一步的,如图3所示,在进行图片显示位置确定时,例如先根据文件sup_show判断图片是否显示;再根据自定义属性的文件sup_mode(有10种选项:left,right,top,bottom,center,fill,lefttop,righttop,leftbottom,rightbottom)确定图片在增强文本控件中的粗略位置,然后根据文件sup_mode的参数数值进行相应的计算后传入文件sup_
width,sup_height,sup_padding_left,sup_padding_top,得到图片在增强文本控件中的准确位置,通过文件drawable.setbounds()将图片显示于所述准确位置。
44.具体的,计算得到在图片在增强文本控件中的准确位置后保存在文件bounds[4]中。需要进行图片显示时,在ondraw()函数中,例如通过文件drawable.setbounds(left,top,right,bottom)设置图片可绘制区域,即图片位置和图片大小;通过文件canvas.rotate()对图片进行旋转;如果判断图片的格式为png、jpg等格式的静态图,则直接通过drawable.draw(canvas)绘制,如果是gif动态图,则通过文件canvas.drawbitmap()绘制。如此一来,能够使得文本控件的附属图片既支持png,、jpg等格式的静态图,也支持gif等格式的动态图显示。
[0045]
在一个实施方式中,增强文本显示方法例如还包括:响应于用户在所述增强文本控件上操作指令,判断所述操作指令是否指向所述图片,若判断为是则执行对应的图片事件,若判断为否则执行对应的增强文本控件事件。
[0046]
具体的,提到的操作指令例如为用户对图片的鼠标点击、框选等选中操作,上位机软件在文件ontouchevent()中进行点击事件的处理,先判断当前点击位置坐标(event.getx(),event.gety())是否是某一张图片,如果判断是图片,再根据文件sup_click判断此图片是否可点击,如果可点击,则执行此图片的点击事件;如果不可点击,则执行增强文本控件的点击事件;如果点击位置不是任何一张图片,则直接执行增强文本控件的点击事件。如此一来,能够实现文本控件的图片与其它部分各自实现点击事件,灵活控制,满足日益多样化和定制化的需求。
[0047]
在一个实施方式中,上位机软件将新增的自定义属性对应接口,可由用户在增强文本控件上进行操作,为图片重新设置大小,位置,旋转角度等,也可实时设置图片是否显示,是否可点击等属性。具体的,上位机软件例如响应于用户操作,通过调整文件sup_padding_left,sup_padding_top的值,可控制图片显示在增强文本控件的任意位置。
[0048]
综上所述,本发明实施例提出一种基于安卓系统的增强文本显示方法,通过在增强文本控件的属性布局文件中新增自定义属性,使得增强文本控件支持添加与自定义属性对应的图片,并在属性布局文件中设置对应的属性参数,增强文本控件进行初始化时,通过属性获取文件获取设置的属性参数,并根据属性参数将对应的图片显示于增强文本控件,能够实现文本控件附属图片显示大小,位置,旋转等属性参数的任意控制,满足用户对文本控件的定制化和多样化设计;通过自定义属性判断对应的图片格式,若判断为动态图格式则根据输入流生成对应格式的文件实现动态图片显示,解决了现有文本控件附属图片只能支持静态图的问题;软件执行用户操作指令时,判断该操作指令是否指向图片,若判断为是则执行对应的图片事件,若判断为否则执行对应的增强文本控件事件,能够实现文本控件的图片与其它部分各自实现点击事件,灵活控制,解决了现有文本控件只能整体响应点击事件,无法区分图片和其他部分的问题。
[0049]
【第二实施例】
[0050]
如图4所示,本发明第二实施例提出一种基于安卓系统的增强文本显示装置20,例如包括:属性添加模块201、参数设置模块202、参数获取模块203和图片显示模块204。
[0051]
其中,属性添加模块201用于在增强文本控件的属性布局文件中新增自定义属性,使得所述增强文本控件支持添加与所述自定义属性对应的图片。参数设置模块202用于根
据所述自定义属性在所述属性布局文件中设置对应的属性参数。参数获取模块203用于由所述增强文本控件进行初始化,通过属性获取文件获取所述属性布局文件中设置的所述属性参数。图片显示模块204用于根据所述自定义属性将对应的所述图片显示于所述增强文本控件。
[0052]
本发明第二实施例公开的基于安卓系统的增强文本显示装置20所实现的基于安卓系统的增强文本显示方法如前述第一实施例所述,故在此不再进行详细讲述。可选地,第二实施例中的各个模块和上述其他操作或功能分别为了实现第一实施例所述的方法,且本实施例的有益效果同前述第一实施例的有益效果相同,为了简洁,不在此赘述。
[0053]
【第三实施例】
[0054]
如图4所示,本发明第三实施例提出一种基于安卓系统的增强文本显示系统30,例如包括:存储器32和连接存储器32的一个或多个处理器31。存储器32存储有计算机程序,处理器31用于执行所述计算机程序以实现如第一实施例所述的基于安卓系统的增强文本显示方法。具体方法可参考第一实施例所述的方法,为了简洁在此不再赘述,且本实施例提供的基于安卓系统的增强文本显示系统30的有益效果与第一实施例提供的基于安卓系统的增强文本显示方法的有益效果相同。
[0055]
【第四实施例】
[0056]
如图5所示,本发明第四实施例提出一种计算机可读存储介质40,计算机可读存储介质40为非易失性存储器且存储有计算机可读指令,当所述计算机可读指令被一个或多个处理器执行时,例如使得所述一个或多个处理器执行前述第一实施例所述的基于安卓系统的增强文本显示方法。具体方法可参考第一实施例所述的方法,为了简洁在此不再赘述,且本实施例提供的计算机可读存储介质40的有益效果同第一实施例提供的基于安卓系统的增强文本显示方法的有益效果相同。
[0057]
此外,可以理解的是,前述各个实施例仅为本发明的示例性说明,在技术特征不冲突、结构不矛盾、不违背本发明的发明目的前提下,各个实施例的技术方案可以任意组合、搭配使用。
[0058]
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和/或方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元/模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多路单元或模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0059]
所述作为分离部件说明的单元/模块可以是或者也可以不是物理上分开的,作为单元/模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多路网络单元上。可以根据实际的需要选择其中的部分或者全部单元/模块来实现本实施例方案的目的。
[0060]
另外,在本发明各个实施例中的各功能单元/模块可以集成在一个处理单元/模块中,也可以是各个单元/模块单独物理存在,也可以两个或两个以上单元/模块集成在一个单元/模块中。上述集成的单元/模块既可以采用硬件的形式实现,也可以采用硬件加软件功能单元/模块的形式实现。
[0061]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1