一种机顶盒的页面显示方法及机顶盒设备
技术领域
本发明涉及数字电视领域,特别是涉及一种机顶盒的页面显示方法及机顶盒设备。
背景技术
可扩展标记语言(extensible markup language,XML),是一种用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。
近几年,随着数字电视的飞速发展,机顶盒已进入千家万户。随着数字电视功能的日益丰富,同时也得益于芯片技术的飞速发展,机顶盒的功能越来越丰富,随着广电前端高清节目的逐渐增多,标清机顶盒已经满足不了用户的需求,高清机顶盒已经逐渐成了流行的趋势。高清机顶盒和标清机顶盒的区别除了硬件上和节目源的不同,最重要的区别就是机顶盒页面显示不同,高清相对比例比标清要大,这样页面显示会更清晰。对于机顶盒厂家来说,页面由标清转变成高清,即由标清机顶盒向高清机顶盒的平移,已成为当下重要的工作之一。
由于标清机顶盒和高清机顶盒的大部分软件架构基本相同,那么平移时可以直接将标清的代码移植到高清上来,这样大部分的工作量就在页面调试这一块,即每次将从标清移植到高清的代码修改后都要重新编译代码,然后运行查看效果,这样一直重复修改和重新编译代码的工作。这样做的结果还会导致存在两套除了坐标以外其他完全相同的代码,从而导致高标清代码维护较为困难。
发明内容
本发明主要解决的技术问题是提供一种机顶盒的页面显示方法,还提供相应的机顶盒设备,能够灵活地对机顶盒的页面进行显示,从而在同一机顶盒从标清向高清平移时,只要修改XML文件就可以轻松完成,省去了繁琐的页面调试工作,大大提高了工作效率。
为解决上述技术问题,本发明采用的技术方案是:
一种机顶盒的页面显示方法,包括:
在创建页面时,加载预先保存在本地的可扩展标记语言文件;
解析该可扩展标记语言文件中的坐标数据,其中,坐标数据与页面中的窗口和控件对应;
根据坐标数据来创建并显示该页面;
其中,该可扩展标记语言文件用于存储标清和高清两套代码中不同的坐标数据,进而通过修改该可扩展标记语言文件实现同一机顶盒从标清向高清的平移。
进一步的,根据坐标数据来创建并显示该页面的步骤之后还包括:
卸载该页面对应的可扩展标记语言文件。
进一步的,解析该可扩展标记语言文件中的坐标数据的步骤包括:
查找该可扩展标记语言文件中的开始标识和结束标识;
如果查找到该开始标识和结束标识,则获取该开始标识和该结束标识之间的坐标数据;
将该坐标数据保存到预先分配好的缓冲区中。
进一步的,解析该可扩展标记语言文件中的坐标数据的步骤包括:
查找该可扩展标记语言文件中的开始标识;
如果查找到该开始标识,则从该开始标识开始获取坐标数据;
将该坐标数据保存到预先分配好的缓冲区中,直到查找到可扩展标记语言文件中的结束标识。
进一步的,根据坐标数据来创建并显示该页面的步骤包括:
从缓冲区获取该页面中的窗口和控件对应的坐标数据;
根据该坐标数据来创建并显示所述页面,其中,窗口和控件在该页面中的坐标位置根据对应的坐标数据进行显示。
一种机顶盒设备,包括:
加载模块,用于在创建页面时,加载预先保存在本地的可扩展标记语言文件;
解析模块,用于解析该可扩展标记语言文件中的坐标数据,其中,坐标数据与页面中的窗口和控件对应;
页面创建模块,用于根据该坐标数据来创建并显示该页面;
其中,该可扩展标记语言文件用于存储标清和高清两套代码中不同的坐标数据,进而通过修改该可扩展标记语言文件实现同一机顶盒从标清向高清的平移。
进一步的,该设备还包括:
卸载模块,用于卸载该可扩展标记语言文件。
进一步的,解析模块包括:
第一查找单元,用于查找该可扩展标记语言文件中的开始标识和结束标识;
第一获取单元,用于当第一查找单元查找到开始标识和结束标识,则获取开始标识和结束标识之间的坐标数据;
第一保存单元,用于将该坐标数据保存到预先分配好的缓冲区中。
进一步的,解析模块包括:
第二查找单元,用于查找可扩展标记语言文件中的开始标识;
第二获取单元,用于当第二查找单元查找到该开始标识,则从该开始标识开始获取坐标数据;
第二保存单元,用于将该坐标数据保存到预先分配好的缓冲区中,直到查找到可扩展标记语言文件中的结束标识。
进一步的,页面创建模块包括:
获取单元,用于从所述缓冲区获取该页面中的窗口和控件对应的坐标数据;
页面创建单元,用于根据该坐标数据来创建并显示该页面,其中,窗口和控件在该页面中的坐标位置根据对应的坐标数据进行显示。
本发明的有益效果是:本发明中,机顶盒在创建页面时,先加载预先保存在本地的XML文件,然后解析该XML文件中的坐标数据,其中,该坐标数据与页面中的窗口和控件对应,再根据该坐标数据来创建并显示页面;页面中的窗口和控件的坐标数据在创建时统一从XML文件中提取,将标清和高清两套代码中相同的部分统一起来,而将不同的坐标数据部分单独保存在XML文件中,省去了在从标清向高清移植的时候,不断修改代码中窗口和控件的坐标数据并且进行重新编译代码的工作,而只需修改XML文件中的坐标数据,修改完XML文件中的坐标数据后,然后重新进去页面就能看到修改坐标数据后的效果,而不用再重新编译代码,这样在代码调试的过程中节省大量的编译时间还给高标清代码维护上带来极大的方便,大大提高了工作效率。
附图说明
图1是本发明实施例机顶盒的页面显示方法的数据流程图;
图2是本发明实施例机顶盒的页面显示方法中解析XML文件的数据流程图;
图3是本发明实施例机顶盒设备的逻辑结构示意图。
具体实施方式
请参阅图1和图2,本发明机顶盒的页面显示方法的实施例包括:
101、在创建页面时,加载预先保存在本地的XML文件;
XML文件是预先保存在本地的用于保存各个页面中窗口和控件的坐标数据的文件;机顶盒在创建页面时,首先去加载该XML文件,其中,XML文件可以是所有的页面公用一个XML文件,也可以是每个页面对应一个XML文件,此处不做限制;如果是所有的页面公用一个XML文件,则加载该XML文件,如果是每个页面对应一个XML文件,则加载该页面对应的XML文件;
102、判断是否加载成功;
判断是否加载成功,如果加载成功,则执行步骤103,如果加载失败,则结束流程;
103、解析XML文件中窗口和控件的坐标数据;
如果XML文件加载成功,则对该XML文件进行解析,获取该XML文件中窗口和控件的坐标数据;具体的获取流程请参阅图2,包括:
201、查找XML文件中的开始标识和结束标识;
XML文件中的开始标识代表在该开始标识之后,写入的是窗口和控件的坐标数据,在窗口和控件的坐标数据写完后,以结束标识结束;所以在解析XML文件中的数据时,首先查找XML文件中的开始标识和结束标识;
202、判断是否查找成功;
判断是否查找成功,如果查找成功,则执行步骤203,如果查找失败,则执行步骤207;
203、获取开始标识和结束标识之间页面中窗口和控件的坐标数据;
如果成功查找到开始标识和结束标识,则获取开始标识和结束标识之间页面中窗口和控件的坐标数据;
204、判断是否出错;
判断获取过程中是否出错,如果没有出错,则执行步骤205,如果出错,则执行步骤207;
205、将获取的坐标数据保存到预先分配好的缓冲区中;
如果获取坐标数据的过程没有出错,则将获取的坐标数据保存到预先分配好的缓冲区buffer中,在保存的时候,将坐标数据与页面中窗口和控件建立对应关系,以便后续在创建和显示页面时,能够根据对应关系准确地获取对应的窗口或者控件的坐标数据;
206、返回正确结果;
如果成功将获取的坐标数据保存到预先分配好的缓冲区中,则返回正确结果,然后结束流程;
207、返回错误信息;
如果步骤202中判断出查找失败,或者步骤204中判断出出错,则返回错误信息,然后结束流程;
进一步的,解析XML文件中窗口和控件的坐标数据的流程还可以具体为:
首先查找XML文件中的开始标识,如果查找到该开始标识,则从该开始标识开始获取坐标数据,然后将坐标数据保存到预先分配好的缓冲区buffer中,直到查找到该XML文件中的结束标识后结束流程;在将坐标数据保存到的缓冲区buffer中的时候,将坐标数据与页面中窗口和控件建立对应关系,以便后续在创建和显示页面时,能够根据对应关系准确地获取对应的窗口或者控件的坐标数据;
104、判断是否得到页面中窗口和控件的坐标数据;
解析XML文件后,判断是否得到页面中窗口和控件的坐标数据,如果成功得到页面中窗口和控件的坐标数据,则执行步骤105,如果没有得到页面中窗口和控件的坐标数据,则结束流程;
105、根据坐标数据来创建并显示页面;
得到页面中窗口和控件的坐标数据后,根据该坐标数据来创建页面,其中,页面中的窗口和控件的坐标由对应的坐标数据确定,成功创建页面后,显示该页面;具体的:
先从缓冲区buffer中获取本页面中的窗口和控件对应的坐标数据,然后根据该坐标数据来创建并显示本页面;
106、卸载XML文件;
成功创建和显示页面后,将XML文件卸载;
在本实施例中,机顶盒在创建页面时,先加载预先保存在本地的XML文件,然后解析该XML文件中的坐标数据,其中,该坐标数据与页面中的窗口和控件对应,再根据该坐标数据来创建并显示页面;页面中的窗口和控件的坐标数据在创建时统一从XML文件中提取,将标清和高清两套代码中相同的部分统一起来,而将不同的坐标数据部分单独保存在XML文件中,省去了在从标清向高清移植的时候,不断修改代码中窗口和控件的坐标数据并且进行重新编译代码的工作,而只需修改XML文件中的坐标数据,修改完XML文件中的坐标数据后,然后重新进去页面就能看到修改坐标数据后的效果,而不用再重新编译代码,这样在代码调试的过程中节省大量的编译时间还给高标清代码维护上带来极大的方便,大大提高了工作效率。
请参阅图3,本发明机顶盒设备的实施例包括:
本实施例中的机顶盒设备包括:
加载模块301,用于在创建页面时,加载XML文件;
解析模块302,用于解析加载模块301加载的XML文件中的坐标数据,其中,该坐标数据与页面中的窗口和控件对应;
页面创建模块303,用于根据解析模块302解析得到的坐标数据来创建并显示页面;
进一步的,解析模块302包括:
第一查找单元3021,用于查找XML文件中的开始标识和结束标识;
第一获取单元3022,用于当第一查找单元3021查找到开始标识和结束标识时,则获取开始标识和结束标识之间的坐标数据;
第一保存单元30323,用于将第一获取单元3022获取的坐标数据保存到预先分配好的缓冲区buffer中;
进一步的,解析模块302包括:
第二查找单元,用于查找XML文件中的开始标识;
第二获取单元,用于当第二查找单元查找到开始标识后,则从该开始标识开始获取坐标数据;
第二保存单元,用于将第二获取单元获取的坐标数据保存到预先分配好的缓冲区中,直到查找到XML文件中的结束标识后,结束流程;
进一步的,页面创建模块303包括:
获取单元3031,用于从缓冲区buffer中获取页面中的窗口和控件对应的坐标数据;
页面创建单元3032,用于根据获取单元3031获取的坐标数据来创建并显示页面,其中,窗口和控件在该页面中的坐标位置根据对应的坐标数据进行显示;
进一步的,本实施例中的机顶盒设备还包括:
卸载模块304,用于卸载XML文件;
在本实施例中,机顶盒设备在创建页面时,先加载预先保存在本地的XML文件,然后解析该XML文件中的坐标数据,其中,该坐标数据与页面中的窗口和控件对应,再根据该坐标数据来创建并显示页面;页面中的窗口和控件的坐标数据在创建时统一从XML文件中提取,将标清和高清两套代码中相同的部分统一起来,而将不同的坐标数据部分单独保存在XML文件中,省去了在从标清向高清移植的时候,不断修改代码中窗口和控件的坐标数据并且进行重新编译代码的工作,而只需修改XML文件中的坐标数据,修改完XML文件中的坐标数据后,然后重新进去页面就能看到修改坐标数据后的效果,而不用再重新编译代码,这样在代码调试的过程中节省大量的编译时间还给高标清代码维护上带来极大的方便,大大提高了工作效率。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。