基于安卓系统的文本与其它组件混排方法及装置制造方法及图纸

技术编号:14895036 阅读:95 留言:0更新日期:2017-03-29 10:19
本发明专利技术属于安卓开发技术领域,具体涉及一种基于安卓系统的文本与其它组件混排方法及装置。本发明专利技术的基于安卓系统的文本与其它组件混排方法包括以下步骤:获取界面布局以及所述界面布局内非文本组件视图的参数信息;计算得到所述界面布局内可用于填充文字的矩形区域集合;将文本内容填充至所述矩形区域集合。本发明专利技术的技术方案可根据界面布局中非文本组件视图放置的位置,对文本内容进行自适应地填充,避免了现有方式下非文本组件视图位置改变就需要人为重新进行界面布局文件修改的问题。

【技术实现步骤摘要】

本专利技术属于安卓开发
,具体涉及一种基于安卓系统的文本与其它组件混排方法及装置。
技术介绍
在安卓应用开发领域中,应用程序界面开发是重要的环节之一,界面上展现给用户的内容都是以组件视图的方式进行开发,每个组件视图占据屏幕上的一个矩形区域,例如,文本,图片,视频,表格等内容都对应一种类型的组件视图,通过设置组件视图的文本属性,图片属性等来将多媒体内容呈现在移动终端屏幕上。在许多实际的应用场景中,需要在移动终端界面上同时展现文字内容和其他多媒体内容(例如,图片、动画、视频),一方面,多媒体内容占据了屏幕的一定区域之后,留给文本内容显示的区域通常是不规则的形状,另一方面,文本内容的排版又需要符合阅读习惯方式,因此文本内容通常不能在一个完整的文本组件视图中统一展现,而是需要拆分成多个文本内容,按照阅读习惯分配给多个文本组件视图展现,即文本内容和多媒体内容混合排版。传统的处理方式为,为整个应用界面创建一个界面布局文件,由它定义界面布局的排版结构,保存所有组件视图的类型、位置,尺寸以及相互间位置关系。对于多媒体内容,直接在对应多媒体组件视图中展现内容即可,对于文本内容,则需要根据阅读习惯,按照顺序将文本内容截取出来填充到不同的文本组件视图中。上述方式虽然实现了文本组件视图和其他组件视图的混排,但是界面布局文件严格定义了界面的排版结构,当其中某个多媒体组件视图的尺寸或位置发生变化时,就会影响文本内容显示,必须对所有文本组件视图的参数进行相应调整;另外,若安卓应用需要用到多种布局方式时,就可能需要配置多个的界面布局文件,这样使得界面的开发相当繁琐,不够灵活。专利
技术实现思路
本专利技术的目的之一在于克服以上缺点,提供一种能够自适应实现文本组件视图和其他组件视图混排的方法。为了解决上述技术问题,本专利技术提供了一种基于安卓系统的文本与其它组件混排方法,包括以下步骤:获取界面布局以及所述界面布局内非文本组件视图的参数信息;计算得到所述界面布局内可用于填充文字的矩形区域集合;将文本内容填充至所述矩形区域集合。本专利技术的技术方案根据界面布局中非文本组件视图的位置,自动分析可用于文本展示的区域,对文本内容进行自适应地填充,可适用于所有的界面布局方式,比现有界面布局文件定义的方式更加灵活方便。进一步地,所述界面布局以及所述界面布局内非文本组件视图的参数信息包括界面布局的矩形顶点坐标值、宽度值和高度值;及非文本组件视图的矩形顶点坐标值、宽度值和高度值。进一步地,所述计算得到所述界面布局内可用于填充文字的矩形区域集合,包括以下步骤:根据界面布局以及界面布局内非文本组件视图所有顶点的Y轴坐标值,将界面布局至上而下分割为若干个矩形区域,所述矩形区域宽度等于界面布局宽度,高度为相邻两个Y轴坐标值的差值;裁除每个分割矩形区域内非文本组件视图占用的区域;保存每个分割矩形区域内剩余区域的参数信息,并将剩余区域加入可用于填充文字的矩形区域集合。本专利技术的技术方案先根据组件视图的Y轴坐标值对界面布局进行纵向分割,再去除非文本组件视图占用的区域,可保证将用于填充文字的不规则的区域划分成若干个矩形区域,适用于任意界面布局方式。进一步地,所述将文本内容填充至所述矩形区域集合,包括以下步骤:获取字体的高度和宽度信息;将每个填充文字的矩形区域划分为若干个高度等于字体高度的子区域;根据字体宽度计算每个子区域可填充文字数量;按照至上而下、从左到右的顺序,向子区域内填充相应数量的文字。进一步地,所述将文本内容填充至所述矩形区域集合,还包括以下步骤:若所述矩形区域集合可填充文字数量小于文本文字数量,则计算所需区域大小,对界面布局动态扩展后再进行填充。进一步地,所述“计算所需区域大小,对界面布局动态扩展”,具体为:先根据界面布局宽度和字体宽度计算扩展区域每行可填充文字数量,再根据还需填充文字数和每行可填充文字数量计算需要扩展行数,界面布局向下动态扩展的高度为字体高度乘以需扩展行数。本专利技术的技术方案可根据字体的尺寸信息,自适应地计算每个填充区域的文字数量,再进行文本的分割填充,在填充区域不足时,可以对界面布局进行自动扩展,无需人工进行调整,使用更加方便。相应地,本专利技术还提供了一种基于安卓系统的文本与其它组件混排装置,包括:第一处理模块,用于获取界面布局以及所述界面布局内非文本组件视图的参数信息;第二处理模块,用于计算得到所述界面布局内可用于填充文字的矩形区域集合;第三处理模块,用于将文本内容填充至所述矩形区域集合。进一步地,所述第二处理模块,包括:第一处理单元,用于根据界面布局以及界面布局内非文本组件视图所有顶点的Y轴坐标值,将界面布局至上而下分割为若干个矩形区域,所述矩形区域宽度等于界面布局宽度,高度为相邻两个Y轴坐标值的差值;第二处理单元,用于裁除每个分割矩形区域内非文本组件视图占用的区域;第三处理单元,用于保存每个分割矩形区域内剩余区域的参数信息,并将剩余区域加入可用于填充文字的矩形区域集合。进一步地,所述第三处理模块,包括:第一处理单元,用于获取字体的高度和宽度信息;第二处理单元,用于将每个填充文字的矩形区域划分为若干个高度等于字体高度的子区域;第三处理单元,用于根据字体宽度计算每个子区域可填充文字数量;第四处理单元,用于按照至上而下、从左到右的顺序,向子区域内填充相应数量的文字。进一步地,所述第三处理模块,还包括:第五处理单元,用于若所述矩形区域集合可填充文字数量小于文本文字数量,则计算所需区域大小,对界面布局动态扩展后再进行填充。综上所述,本专利技术技术方案的有益效果有:1.根据界面布局中非文本组件视图的位置,自动分析可用于文本展示的区域,对文本内容进行自适应地填充,可适用于所有的布局方式,比现有界面布局文件定义的方式更加灵活方便。2.根据组件视图的Y轴坐标值对界面布局进行纵向分割,再去除非文本组件视图占用的区域,可保证将用于填充文字的不规则的区域划分成若干个矩形区域,适用于任意界面布局方式。3.根据字体的尺寸信息,自适应地计算每个填充区域的文字数量,再进行文本的分割填充,在填充区域不足时,可以对界面布局进行自动扩展,无需人工进行调整,使用更加方便。附图说明图1是本专利技术的一种基于安卓系统的文本与其它组件混排方法步骤流程图。图2是本专利技术的一种计算得到可用于填充文字的矩形区域集合步骤流程图。图3是本专利技术的一种将文本内容填充至矩形区域集合步骤流程图。图4是本专利技术实施例示意图1。图5是本专利技术实施例示意图2。图6是本专利技术的一种基于安卓系统的文本与其它组件混排装置结构图。图7是本专利技术的一种第二处理模块结构图。图8是本专利技术的一种第三处理模块结构图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。在安卓应用场景中,经常需要在移动终端界面上同时展现文字内容和其他多媒体内容(例如,图片、动画、视频),由于多媒体内容占据了屏幕的一定区域之后,留给文本内容显示的区域通常是不规则的形状,而且文本内容的排版又需要符合阅读习惯方式,因此文本内容通常不能在一个完整的文本组本文档来自技高网
...

【技术保护点】
基于安卓系统的文本与其它组件混排方法,其特征在于,包括以下步骤:获取界面布局以及所述界面布局内非文本组件视图的参数信息;计算得到所述界面布局内可用于填充文字的矩形区域集合;将文本内容填充至所述矩形区域集合。

【技术特征摘要】
1.基于安卓系统的文本与其它组件混排方法,其特征在于,包括以下步骤:获取界面布局以及所述界面布局内非文本组件视图的参数信息;计算得到所述界面布局内可用于填充文字的矩形区域集合;将文本内容填充至所述矩形区域集合。2.如权利要求1所述的基于安卓系统的文本与其它组件混排方法,其特征在于,所述界面布局以及所述界面布局内非文本组件视图的参数信息包括界面布局的矩形顶点坐标值、宽度值和高度值;及非文本组件视图的矩形顶点坐标值、宽度值和高度值。3.如权利要求1所述的基于安卓系统的文本与其它组件混排方法,其特征在于,所述计算得到所述界面布局内可用于填充文字的矩形区域集合,包括以下步骤:根据界面布局以及界面布局内非文本组件视图所有顶点的Y轴坐标值,将界面布局至上而下分割为若干个矩形区域,所述矩形区域宽度等于界面布局宽度,高度为相邻两个Y轴坐标值的差值;裁除每个分割矩形区域内非文本组件视图占用的区域;保存每个分割矩形区域内剩余区域的参数信息,并将剩余区域加入可用于填充文字的矩形区域集合。4.如权利要求1所述的基于安卓系统的文本与其它组件混排方法,其特征在于,所述将文本内容填充至所述矩形区域集合,包括以下步骤:获取字体的高度和宽度信息;将每个填充文字的矩形区域划分为若干个高度等于字体高度的子区域;根据字体宽度计算每个子区域可填充文字数量;按照至上而下、从左到右的顺序,向子区域内填充相应数量的文字。5.如权利要求4所述的基于安卓系统的文本与其它组件混排方法,其特征在于,所述将文本内容填充至所述矩形区域集合,还包括以下步骤:若所述矩形区域集合可填充文字数量小于文本文字数量,则计算所需区域大小,对界面布局动态扩展后再进行填充。6.如权利要求5所述的基于安卓系统的文本与其它组件混排方法,其特征在于,所述“计算所...

【专利技术属性】
技术研发人员:杨金泽盛放
申请(专利权)人:福建星网锐捷通讯股份有限公司
类型:发明
国别省市:福建;35

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

1