本发明涉及信息处理技术领域,尤其涉及一种自定义模板中的数据选择方法。
背景技术:
智能电视,是基于网络应用技术,具备开放式操作系统与芯片,拥有开放式应用平台,可实现双向人机交互功能,集影音、娱乐、数据等多种功能于一体,以满足用户多样化和个性化需求的电视产品。
智能电视在使用中,虽然连接有网络,能够将网络资源推送给用户,比如推荐的电影、热门应用等等。但其数据展示通常使用线性布局展现,将数据展现直接放在一个view中,view才能查看不同类型的数据。用户在使用智能电视的时候往往更多的会考虑到自己的喜好,因此对于不同用户来说,仅采用统一的数据进行推送展示,并不能给用户使用带来便捷的体验,灵活度很差,无法满足用户的使用需求。如何能够为用户提供灵活的可定制的可操控用户界面,使得用户能够根据自己需求进行主页数据的展示,依然是本领域亟待解决的问题。
技术实现要素:
本发明的目的是提供一种自定义模板中的数据选择方法,提供了一种支持用户自定义修改用户界面模板内容的解决方案,对于不再关注的内容进行删除,同时在系统缓存中进行相应的数据记录,使得用户在使用智能电视的时候能够更好地对用户自定义的主页模板进行更新维护,灵活性更好,方便用户的使用。
为实现上述目的,本发明提供了一种自定义模板中的数据选择方法,包括:
获取选中数据缓存区的数据集合;所述数据集合中包括多个待添加模板内容数据;所述待添加模板内容数据具有数据id;
根据所述待添加模板内容数据的数据类型加载相应的布局参数;
根据所述布局参数,将所述待添加模板内容数据显示为自定义模板用户界面;
接收用户通过所述自定义模板用户界面输入的数据移除选择指令;
根据所述数据移除选择指令确定所选择的一个或多个数据类型;所述数据类型具有数据类型id;
根据所述数据类型id,确定所述选中数据缓存区中的所述一个或多个待添加模板内容数据,将所述一个或多个待添加模板内容数据从所述选中数据缓存区的数据集合中去除;
获取所述选中数据缓存区中剩余的待添加模板内容数据,并根据所述剩余的待添加模板内容数据的数据类型加载相应的布局参数,输出自定义模板用户界面。
优选的,在所述根据所述数据类型id,确定所述选中数据缓存区中的所述一个或多个待添加模板内容数据之后,所述方法还包括:
根据所述一个或多个待添加模板内容数据的数据id,在全部数据缓存区中确定所述一个或多个待添加模板内容数据的一个或多个原始数据;所述原始数据具有用以表示所述原始数据是否被选中为待添加模板内容数据的数据属性,所述数据属性包括选中和未选中;
根据所述移除选择指令将所述一个或多个原始数据的数据属性由选中修改为未选中。
优选的,所述方法还包括:
接收用户输入的用户登录信息;
根据所述用户登录信息生成自定义模板查询指令发送给所述服务器;
所述服务器根据所述用户登录信息得到相应的数据集合,并返回给用户设备,存储于所述选中数据缓存区。
优选的,所述根据所述布局参数,将所述待添加模板内容数据显示为自定义模板用户界面具体为:
根据所述待添加模板内容数据的数据类型确定数据类型id;
根据所述布局参数,对不同数据类型id的待添加模板内容数据在所述自定义模板用户界面分条目显示。
优选的,在所述获取选中数据缓存区的数据集合之前,所述方法还包括:
生成所述选中数据缓存区的数据集合。
本发明实施例提供的自定义模板中的数据选择方法,提供了一种支持用户自定义修改用户界面模板内容的解决方案,对于不再关注的内容进行删除,同时在系统缓存中进行相应的数据记录,使得用户在使用智能电视的时候能够更好地对用户自定义的主页模板进行更新维护,灵活性更好,方便用户的使用。
附图说明
图1为本发明实施例提供的一种自定义模板中的数据选择方法的流程图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
本发明实施例提供的自定义模板中的数据选择方法可以应用于智能电视的系统中。下面实施例中所述的用户设备即是指智能电视或者与智能电视相接的用于执行指令、信息处理的智能机顶盒。
下面,结合图1所示的自定义模板数据添加方法流程图,对本发明实施例提供的自定义模板数据添加方法进行说明。
如图1所示,本发明实施例提出的自定义模板中的数据选择方法主要包括如下步骤:
步骤110,获取选中数据缓存区的数据集合;
具体的,数据集合中包括多个待添加模板内容数据;待添加模板内容数据具有数据id;
在智能电视系统中,数据的存储可以设置有不同的缓存区域,比如可以将全部本地数据已不同数据类型分别进行缓存,将用户选择的数据根据类型再单独缓存。本步骤及下文中所说的全部数据缓存区即为用于全部数据存储的区域,而选中数据缓存区即为用于所选择的待展示数据的数据存储的区域。
在一个具体的技术实现中,采用recyclerview实现切换数据的菜单,对于不同的数据可以用碎片(fragment)展现,抽取basefragment,即代码中的公共方法,子fragment的公共方法在基类中定义,并定义接口,让布满整个窗口或者悬浮于其他窗口上的交互界面(activity)实现该接口,以实现fragment和activity的数据交互。
定义数据管理类datamanager(数据管理模块),数据有三个缓存区域,全部数据以不同类型分别缓存在map<type,arraylist<basebean>>allitems,已选择的数据有根据type单独管理的map集合map<type,arraylist<basebean>>selecteditemsbytype,全部已选择数据缓存list<basebean>allselected。
其中,datamanager在activity中实例化,依附于该activity存在,不以单例形式存在,避免内存泄露。而不同数据类型都继承自basebean,方便在缓存中统一管理。
进一步的,该数据集合可以是基于智能电视设备本身的数据缓存记录的数据集合,也可以是基于用户的与用户相关联的数据缓存中的数据集合。
本实施例优选的采用与用户相关联的方案。因此可以通过用户登录的方式来进行数据集合的获取。
具体可以包括:用户设备接收用户输入的用户登录信息;根据用户登录信息生成自定义模板查询指令发送给服务器;服务器根据用户登录信息得到相应的数据集合,并返回给用户设备,存储于选中数据缓存区。
步骤120,根据待添加模板内容数据的数据类型加载相应的布局参数;
具体的,每一个待添加模板内容数据都具有数据类型的属性。
根据这个属性,对不同数据类型的待添加模板内容数据进行不同布局类型的加载,从而进行相应的展示。
比如在一个具体的实现中,可以在不同数据类型界面选择条目,添加到allselected集合中,在“已选择”界面根据allselected中元素的类型加载不同类型布局。
步骤130,根据布局参数,将待添加模板内容数据显示为自定义模板用户界面;
由此,在自定义模板用户界面,可以显示有数据类型条目,用以对该数据类型及其类型下的数据进行操作。
步骤140,接收用户通过自定义模板用户界面输入的数据移除选择指令;
具体的,可以是对条目进行点击操作,从而用以从自定义模板用户界面上将该条目移除。
对于后台来说,界面和allselected集合都将该条目移除。
步骤150,根据数据移除选择指令确定所选择的一个或多个数据类型;
其中,数据类型具有数据类型id,通过数据类型id可以对应到待添加模板内容数据,从而对数据进行操作。
步骤160,根据数据类型id,确定选中数据缓存区中的一个或多个待添加模板内容数据,将一个或多个待添加模板内容数据从选中数据缓存区的数据集合中去除;
步骤170,获取选中数据缓存区中剩余的待添加模板内容数据,并根据剩余的待添加模板内容数据的数据类型加载相应的布局参数,输出自定义模板用户界面。
activity中定义static方法startactivity并传入回调接口用来返回数据,省去用互联网传递数据时必须序列化的麻烦。
由此,实现自定义模板用户界面展示的数据的定制化选择,使得用户能够将不再需要的数据类型的数据按照条目进行删除。
进一步的,在步骤160根据数据类型id,确定选中数据缓存区中的一个或多个待添加模板内容数据之后,还需要对系统中用于存储选中和未选中为待添加模板内容数据的全部原始数据的全部数据缓存区中相应的数据进行数据属性的修改,将其修改为未被选中为待添加模板内容数据的状态。从而在后续操作中,用户还可以再对其执行选中的操作。其具体的一个执行过程如下述步骤180和步骤190。
步骤180,根据一个或多个待添加模板内容数据的数据id,在全部数据缓存区中确定一个或多个待添加模板内容数据的一个或多个原始数据;
其中,原始数据具有用以表示原始数据是否被选中为待添加模板内容数据的数据属性,数据属性包括选中和未选中;
步骤190,根据移除选择指令将一个或多个原始数据的数据属性由选中修改为未选中。
由此实现原始数据的释放,使得用户在今后如需进行自定义模板中数据添加时,还可以再次选中该数据。
本发明实施例提供的自定义模板中的数据选择方法,提供了一种支持用户自定义修改用户界面模板内容的解决方案,对于不再关注的内容进行删除,同时在系统缓存中进行相应的数据记录,使得用户在使用智能电视的时候能够更好地对用户自定义的主页模板进行更新维护,灵活性更好,方便用户的使用。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。