发明内容
本发明的目的在于提供一种在视图中添加角标的系统和方法,适用于多种场景,简化了现有技术中角标实现过程中的重复性和复杂性,加快了开发进度并减少了开发人员的工作量,并且增强了可维护性和可阅读性。
为了达到上述目的,本发明提供一种在视图中添加角标的系统,其包含:原目标视图定位单元,用于在背景视图中定位原目标视图的位置和大小;角标设置单元,其与所述的原目标视图定位单元相连接,用于设置角标的大小、确定角标相对于原目标视图的设置方位以及确定角标中心点的位置;新目标视图设置单元,其与所述的原目标视图定位单元以及角标设置单元相连接,根据所确定的角标中心点的位置,在背景视图中定位包含原目标视图和角标的新目标视图的位置和大小;角标创建单元,其与所述的角标设置单元以及新目标视图设置单元相连接,根据所设置的角标大小以及角标中心点的位置,在新目标视图中创建角标,并显示角标内的提示字符。
所述的角标设置单元包含:角标大小设置单元,根据默认的设置或者自定义的输入,计算角标的大小;角标位置设置单元,根据默认的设置或者自定义的输入,判断角标相对于原目标视图的设置方位;角标中心点计算单元,其分别与所述的原目标视图定位单元、角标大小设置单元和角标位置设置单元相连接,根据原目标视图的位置大小,角标的位置大小,确定角标中心点的位置。
所述的角标位置设置单元判断得到角标可位于原目标视图右上角,或左上角,或左下角,或右下角。
所述的新目标视图设置单元包含:新目标视图定位单元,其分别与所述的原目标视图定位单元、角标大小设置单元和角标中心点计算单元相连接,根据原目标视图的位置大小,角标的大小以及角标中心点的位置,确定包含了原目标视图和角标的新目标视图在背景视图中的位置和大小;新目标视图创建单元,其与所述的新目标视图定位单元相连接,在背景视图中创建作为子视图的新目标视图,并将原目标视图从背景视图中提取出来合并加入至新目标视图中。
所述的角标创建单元包含:角标显示单元,其分别与所述的角标大小设置单元、角标中心点计算单元和新目标视图创建单元相连接,根据角标大小以及角标中心点的位置,在新目标视图中创建作为子视图的角标,并且该创建的角标作为原目标视图的上一层视图;角标字符单元,其与所述的角标视图显示单元相连接,用于在角标中显示起到提示作用的字符。
本发明还提供一种在视图中添加角标的方法,具体包含以下步骤:
S1、利用原目标视图定位单元在背景视图中定位原目标视图的位置和大小;
S2、利用角标设置单元设置角标的大小、确定角标相对于原目标视图的设置方位以及确定角标中心点的位置;
S3、根据所确定的角标中心点的位置,利用新目标视图设置单元在背景视图中定位包含原目标视图和角标的新目标视图的位置和大小;
S4、根据所设置的角标大小以及角标中心点的位置,利用角标创建单元在新目标视图中创建角标,并显示角标内的提示字符;
S5、输出新目标视图至移动终端设备的显示屏上。
所述的S2中,具体包含以下步骤:
S21、根据默认的设置或者自定义的输入,利用角标大小设置单元计算角标的大小;
S22、根据默认的设置或者自定义的输入,利用角标位置设置单元判断角标相对于原目标视图的设置方位;
S23、根据原目标视图的位置大小以及角标的位置大小,利用角标中心点计算单元确定角标中心点的位置。
所述的S22中,角标位置设置单元判断得到角标可位于原目标视图右上角,或左上角,或左下角,或右下角。
所述的S3中,具体包含以下步骤:
S31、根据原目标视图的位置大小,角标的大小以及角标中心点的位置,利用新目标视图定位单元确定包含了原目标视图和角标的新目标视图在背景视图中的位置和大小;
S32、利用新目标视图创建单元在背景视图中创建作为子视图的新目标视图,并将原目标视图从背景视图中提取出来合并加入至新目标视图中。
所述的S4中,具体包含以下步骤:
S41、根据角标大小以及角标中心点的位置,利用角标显示单元在新目标视图中创建作为子视图的角标,并且该创建的角标作为原目标视图的上一层视图;
S42、利用角标字符单元在角标中显示起到提示作用的字符。
本发明所提供的在视图中添加角标的系统和方法,适用于多种场景,简化了现有技术中针对每种场景编写一种角标实现的编码,以及多分辨率适配时或者更换角标风格时的枯燥的重复劳动,加快了开发进度并减少了开发人员的工作量,并且增强了可维护性和可阅读性。
具体实施方式
以下结合图1~图10,通过详细说明一个较佳的具体实施例,对本发明做进一步阐述。
如图1所示,为本发明所提供的在视图中添加角标的系统,其包含:原目标视图定位单元1,用于在背景视图中定位原目标视图的位置和大小;角标设置单元2,其与所述的原目标视图定位单元1相连接,用于设置角标的大小、确定角标相对于原目标视图的设置方位以及确定角标中心点的位置;新目标视图设置单元3,其与所述的原目标视图定位单元1以及角标设置单元2相连接,根据所确定的角标中心点的位置,在背景视图中定位包含原目标视图和角标的新目标视图的位置和大小;角标创建单元4,其与所述的角标设置单元2以及新目标视图设置单元3相连接,根据所设置的角标大小以及角标中心点的位置,在新目标视图中创建角标,并显示角标内的提示字符。
所述的角标设置单元2包含:角标大小设置单元21,根据默认的设置或者自定义的输入,计算角标的大小;角标位置设置单元22,根据默认的设置或者自定义的输入,判断角标相对于原目标视图的设置方位;角标中心点计算单元23,其分别与所述的原目标视图定位单元1、角标大小设置单元21和角标位置设置单元22相连接,根据原目标视图的位置大小,角标的位置大小,确定角标中心点的位置。
所述的角标位置设置单元22判断得到角标可位于原目标视图右上角,或左上角,或左下角,或右下角。
所述的新目标视图设置单元3包含:新目标视图定位单元31,其分别与所述的原目标视图定位单元1、角标大小设置单元21和角标中心点计算单元23相连接,根据原目标视图的位置大小,角标的大小以及角标中心点的位置,确定包含了原目标视图和角标的新目标视图在背景视图中的位置和大小;新目标视图创建单元32,其与所述的新目标视图定位单元31相连接,在背景视图中创建作为子视图的新目标视图,并将原目标视图从背景视图中提取出来合并加入至新目标视图中。
所述的角标创建单元4包含:角标显示单元41,其分别与所述的角标大小设置单元21、角标中心点计算单元23和新目标视图创建单元32相连接,根据角标大小以及角标中心点的位置,在新目标视图中创建作为子视图的角标,并且该创建的角标作为原目标视图的上一层视图;角标字符单元42,其与所述的角标视图显示单元41相连接,用于在角标中显示起到提示作用的字符。
如图7所示,本发明还提供一种在视图中添加角标的方法,具体包含以下步骤:
S1、利用原目标视图定位单元1在背景视图中定位原目标视图的位置和大小;
S2、利用角标设置单元2设置角标的大小、确定角标相对于原目标视图的设置方位以及确定角标中心点的位置;
S3、根据所确定的角标中心点的位置,利用新目标视图设置单元3在背景视图中定位包含原目标视图和角标的新目标视图的位置和大小;
S4、根据所设置的角标大小以及角标中心点的位置,利用角标创建单元4在新目标视图中创建角标,并显示角标内的提示字符;
S5、输出新目标视图至移动终端设备的显示屏上。
如图8所示,所述的S2中,具体包含以下步骤:
S21、根据默认的设置或者自定义的输入,利用角标大小设置单元21计算角标的大小;
S22、根据默认的设置或者自定义的输入,利用角标位置设置单元22判断角标相对于原目标视图的设置方位;
S23、根据原目标视图的位置大小以及角标的位置大小,利用角标中心点计算单元23确定角标中心点的位置。
所述的S22中,角标位置设置单元22判断得到角标可位于原目标视图右上角,或左上角,或左下角,或右下角。
如图9所示,所述的S3中,具体包含以下步骤:
S31、根据原目标视图的位置大小,角标的大小以及角标中心点的位置,利用新目标视图定位单元31确定包含了原目标视图和角标的新目标视图在背景视图中的位置和大小;
S32、利用新目标视图创建单元32在背景视图中创建作为子视图的新目标视图,并将原目标视图从背景视图中提取出来合并加入至新目标视图中。
如图10所示,所述的S4中,具体包含以下步骤:
S41、根据角标大小以及角标中心点的位置,利用角标显示单元41在新目标视图中创建作为子视图的角标,并且该创建的角标作为原目标视图的上一层视图;
S42、利用角标字符单元42在角标中显示起到提示作用的字符。
在本发明的一个优选实施例中,如图2所示,以背景视图的左上角为坐标原点(0, 0),向右延伸作为X轴,向下延伸作为y轴,从而建立视图坐标系;由此原目标视图定位单元1即可确定原目标视图在背景视图中的位置和大小为TargetRect(x1, y1, w1, h1),其中(x1, y1)为原目标视图的左上角的坐标,w1为原目标视图的宽度,h1为原目标视图的高度。
如图3所示,当角标位置设置单元22判断得到角标位于原目标视图的右上角时,角标的中心点与原目标视图的右上角重叠,这是目前实际应用中角标位置所使用的最多的一种情况。此时,角标大小设置单元21计算得到角标的大小为MarkSize(w2, h2),其中,w2为角标的宽度,h1为角标的高度;而角标中心点计算单元23则计算得到角标的中心点坐标为CenterPoint(x3=x1+w1, y3=y1),其中x3为角标中心点的横坐标,y3为角标中心点的纵坐标。并且,新目标视图定位单元31确定新目标视图在背景视图中的位置和大小为NewTargetRect(x4=x1,y4=y1-h2/2,w4=w1+w2/2,h4=h1+h2/2),其中,(x4, y4)为新目标视图的左上角的坐标,w4为新目标视图的宽度,h4为新目标视图的高度。
如图4所示,当角标位置设置单元22判断得到角标位于原目标视图的右下角时,角标的右下角与原目标视图的右下角重叠。此时,角标大小设置单元21计算得到角标的大小为MarkSize(w2, h2);而角标中心点计算单元23则计算得到角标的中心点坐标为CenterPoint(x3=x1+w1-w2/2, y3=y1+h1-h2/2)。并且,新目标视图定位单元31确定新目标视图在背景视图中的位置和大小与原目标视图完全重叠,即NewTargetRect=TargetRect。
如图5所示,当角标位置设置单元22判断得到角标位于原目标视图的左上角时,角标的左上角与原目标视图的左上角重叠。此时,角标大小设置单元21计算得到角标的大小为MarkSize(w2, h2);而角标中心点计算单元23则计算得到角标的中心点坐标为CenterPoint(x3=x1+w2/2, y3=y1+h2/2)。并且,新目标视图定位单元31确定新目标视图在背景视图中的位置和大小与原目标视图完全重叠,即NewTargetRect=TargetRect。
如图6所示,当角标位置设置单元22判断得到角标位于原目标视图的左下角时,角标的左下角与原目标视图的左下角重叠。此时,角标大小设置单元21计算得到角标的大小为MarkSize(w2, h2);而角标中心点计算单元23则计算得到角标的中心点坐标为CenterPoint(x3=x1+w2/2, y3 =y1+h1-h2/2)。并且,新目标视图定位单元31确定新目标视图在背景视图中的位置和大小与原目标视图完全重叠,即NewTargetRect=TargetRect。
综上所述,本发明所提供的在视图中添加角标的系统和方法,基本思路是在原目标视图外增加一个外部视图作为新目标视图,该新目标视图是根据原目标视图的大小位置和角标的大小位置而计算得到的。将新目标视图添加到原目标视图的背景视图下,同时将原目标视图从其背景视图中提取出来,作为新目标视图的子视图加入到新目标视图中。然后创建角标视图,也将其作为新目标视图的子视图添加到新目标视图中,最终输出新目标视图至移动终端设备的显示屏上,此时即可实现角标生成和显示的功能。
本发明所提供的在视图中添加角标的系统和方法,对角标功能进行封装,并且设置相应的目标视图和需要显示的字符,就能显示对应的角标,使其适用于多种场景,简化了现有技术中针对每种场景编写一种角标实现的编码,以及多分辨率适配时或者更换角标风格时的枯燥的重复劳动,加快了开发进度并减少了开发人员的工作量,并且增强了可维护性和可阅读性。因此,为了能够有效简化现有技术中实现角标功能的方法,需要通过外部调用最简单的接口以实现该功能,因此在实现过程中使用了一些约定,是基于约定大于配置的契约式思想而提出的。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。