一种Tab标签动态更新方法及装置制造方法及图纸

技术编号:16079677 阅读:37 留言:0更新日期:2017-08-25 15:21
本发明专利技术提供一种Tab标签动态更新方法及装置,所述的方法包括:将ViewPager中的适配器对象绑定到Tablayout上;当ViewPgaer中适配器对象实现了TabLayout上的动态加载接口时,获取适配器对象中的Tab标签数据;根据获取的Tab标签数据,对TabLayout中的Tab标签数据进行动态更新。本发明专利技术在TabLayout上增加一动态加载接口,用来标记TabLayout需要动态加载,当检测到Viewpager中适配器对象实现这个接口时,表明该TabLayout需要动态加载,然后根据适配器中的Tab标签的数据来对TabLayout中的Tab标签数据进行动态更新,实现了在TabLayout上的动态加载功能。

【技术实现步骤摘要】
一种Tab标签动态更新方法及装置
本专利技术涉及页面处理技术,更具体地,涉及一种Tab标签动态更新方法及装置。
技术介绍
在Android的应用程序开发中,经常会用到TabLayout,TabLayout是Android支持库中的一种控件,用来帮助开发者实现标签的导航式布局。许多的Android应用主界面底部或者顶部有多个文本或者图标的栏目,这种样式就是标签导航,由于TabLayout是Android官方推出的控件,所以拥有着比市场上第三方控件更好的兼容性。但是目前TabLayout设计仅是针对静态的Tab标签设计的,并不支持动态加载Tab标签。比如一个页面有5个Tab标签,这个是事先设计好的,但是在实际中,Tab标签的数量是变化的,当使用TabLayout做动态数据变化时,TabLayout无法显示变化后的Tab标签。
技术实现思路
本专利技术提供一种Tab标签动态更新方法及装置,克服了传统的TabLayout设计不支持动态加载的问题。根据本专利技术的一个方面,提供一种Tab标签动态更新方法,包括:S1,通过重写标签导航控件TabLayout中的方法,将页面布局管理器ViewPager中的适配器对象绑定到Tablayout上;S2,获取TabLayout当前绑定的适配器对象,当所述适配器对象实现了TabLayout上的动态加载接口时,获取所述适配器对象中的Tab标签数据,其中,所述动态加载接口用来标记该TabLayout需要动态加载;S3,根据获取的Tab标签数据,对TabLayout中的Tab标签数据进行动态更新。本专利技术的有益效果为:在TabLayout上增加动态加载接口,用来标记TabLayout需要动态加载,当检测到Viewpager中适配器对象实现这个接口时,表明该TabLayout需要动态加载,然后根据适配器中的Tab标签的数据来对TabLayout中的Tab标签数据进行动态更新,实现了在TabLayout上的动态加载功能。在上述技术方案的基础上,本专利技术还可以作如下改进。可选的,所述步骤S2还包括:在TabLayout中设置监听器,用来对ViewPager的适配器对象中的Tab标签数据变化进行监听;当监听到适配器对象中的Tab标签数据发生变化时,获取适配器对象中的Tab标签数据。可选的,所述适配器对象中的Tab标签数据包括Tab标签的数目和每一个Tab标签的文本内容。可选的,所述步骤S3具体包括:S31,获取TabLayout中Tab标签的数目,判断TabLayout中Tab标签的数目与ViewPager的适配器对象中的Tab标签的数目是否相等,若相等,执行步骤S32;若不相等,执行步骤S33;S32,根据所述适配器对象中的每一个Tab标签的文本内容,对TabLayout中对应位置的Tab标签的文本内容进行更新;S33,通过向TabLayout中增加或删除Tab标签,使得Tablayout中Tab标签的数目与配适器对象中Tab标签的数目相等,并根据适配器对象中的每一个Tab标签的文本内容,对TabLayout中对应位置的Tab标签的文本内容进行动态更新。可选的,通过如下方式对TabLayout中Tab标签的文本内容进行动态更新:根据Viewpager的适配器对象中的Tab标签的文本内容,在TabLayout中获取对应位置的Tab标签相应的Tab对象,并获取Tab对象持有的控件;将适配器对象中Tab标签的文本内容填充入所述控件,完成对TabLayout中Tab标签的文本内容的更新。可选的,所述步骤S3之后还包括:当对TabLayout中的Tab标签数据完成更新后,按照默认设置,对需要选中的Tab标签恢复选中状态。根据本专利技术的另一个方面,还提供了一种Tab标签动态更新装置,包括:绑定模块,用于通过重写TabLayout中的方法,将ViewPager中的适配器对象绑定到Tablayout上;获取模块,用于获取TabLayout当前绑定的适配器对象,当所述适配器对象实现了TabLayout上的动态加载接口时,获取所述适配器对象中的Tab标签数据,其中,所述动态加载接口用来标记该TabLayout需要动态加载;动态更新模块,用于根据获取的Tab标签数据,对TabLayout中的Tab标签数据进行动态更新。可选的,还包括监听器;所述监听器,设置于TabLayout中,用于对ViewPager的适配器对象中的Tab标签数据变化进行监听;所述获取模块还用于:当监听器监听到适配器对象中的Tab标签数据发生变化时,获取适配器对象中的Tab标签数据。可选的,还包括判断模块和增加/删除模块;判断模块,用于获取并判断TabLayout中Tab标签的数目与ViewPager的适配器对象中的Tab标签的数目是否相等,若相等,则调用所述动态更新模块;否则,调用增加/删除模块;增加/删除模块,用于通过向TabLayout中增加或删除Tab标签,使得Tablayout中Tab标签的数目与配适器对象中Tab标签的数目相等,并调用所述动态更新模块;所述动态更新模块,用于根据所述适配器对象中的每一个Tab标签的文本内容,对TabLayout中对应位置的Tab标签的文本内容进行动态更新。可选的,所述获取模块还用于:根据Viewpager的适配器对象中的Tab标签的文本内容,在TabLayout中获取对应位置的Tab标签相应的Tab对象,并获取Tab对象持有的控件;所述动态更新模块,用于对TabLayout中Tab标签的文本内容进行动态更新具体包括:通过将适配器对象中Tab标签的文本内容填充入所述控件,完成对TabLayout中Tab标签的文本内容的动态更新。附图说明图1为本专利技术一个实施例的Tab标签动态更新方法流程图;图2为本专利技术另一个实施例的Tab标签动态更新装置连接框图;图3为本专利技术另一个实施例的Tab标签动态更新装置整体连接框图;图4为本专利技术另一个实施例的Tab标签动态更新装置的测试设备的连接框图。具体实施方式下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。参见图1,为本专利技术一个实施例的Tab标签动态更新方法,适用于浏览器中导航式标签的布局,能够在Android开发中实现在标签导航控件TabLayout中对Tab标签进行动态更新布局,TabLayout控件能够用来显示Tab标签的布局,是Android应用中使用最广泛的布局组件之一。ViewPager最基本的功能就是能够实现页面的左右滑动的功能,实现页面的展示效果。Tab标签动态更新方法方法包括:S1,通过重写标签导航控件TabLayout中的方法,将页面布局管理器ViewPager中的适配器对象绑定到Tablayout上;S2,获取TabLayout当前绑定的适配器对象,当所述适配器对象实现了TabLayout上的动态加载接口时,获取所述适配器对象中的Tab标签数据,其中,所述动态加载接口用来标记该TabLayout需要动态加载;S3,根据获取的Tab标签数据,对TabLayout中的Tab标签数据进行动态更新。在Andriod的应用开发中,经常会使用到TabLayout,TabLayout是Android支持库本文档来自技高网...
一种Tab标签动态更新方法及装置

【技术保护点】
一种Tab标签动态更新方法,其特征在于,包括:S1,通过重写标签导航控件TabLayout中的方法,将页面布局管理器ViewPager中的适配器对象绑定到TabLayout上;S2,获取TabLayout当前绑定的适配器对象,当所述适配器对象实现了TabLayout上的动态加载接口时,获取所述适配器对象中的Tab标签数据,其中,所述动态加载接口用来标记该TabLayout需要动态加载;S3,根据获取的适配器对象中的Tab标签数据,对TabLayout中的Tab标签数据进行动态更新。

【技术特征摘要】
1.一种Tab标签动态更新方法,其特征在于,包括:S1,通过重写标签导航控件TabLayout中的方法,将页面布局管理器ViewPager中的适配器对象绑定到TabLayout上;S2,获取TabLayout当前绑定的适配器对象,当所述适配器对象实现了TabLayout上的动态加载接口时,获取所述适配器对象中的Tab标签数据,其中,所述动态加载接口用来标记该TabLayout需要动态加载;S3,根据获取的适配器对象中的Tab标签数据,对TabLayout中的Tab标签数据进行动态更新。2.如权利要求1所述的Tab标签动态更新方法,其特征在于,所述步骤S2还包括:在TabLayout中设置监听器,用来对ViewPager的适配器对象中的Tab标签数据变化进行监听;当监听到适配器对象中的Tab标签数据发生变化时,获取适配器对象中的Tab标签数据。3.如权利要求2所述的Tab标签动态更新方法,其特征在于,所述适配器对象中的Tab标签数据包括Tab标签的数目和每一个Tab标签的文本内容。4.如权利要求3所述的Tab标签动态更新方法,其特征在于,所述步骤S3具体包括:S31,获取TabLayout中Tab标签的数目,判断TabLayout中Tab标签的数目与ViewPager的适配器对象中的Tab标签的数目是否相等,若相等,执行步骤S32;若不相等,执行步骤S33;S32,根据所述适配器对象中的每一个Tab标签的文本内容,对TabLayout中对应位置的Tab标签的文本内容进行动态更新;S33,通过向TabLayout中增加或删除Tab标签,使得Tablayout中Tab标签的数目与配适器对象中Tab标签的数目相等,并根据适配器对象中的每一个Tab标签的文本内容,对TabLayout中对应位置的Tab标签的文本内容进行更新。5.如权利要求4所述的Tab标签动态更新方法,其特征在于,通过如下方式对TabLayout中Tab标签的文本内容进行更新:根据Viewpager的适配器对象中的Tab标签的文本内容,在TabLayout中获取对应位置的Tab标签相应的Tab对象,并获取Tab对象持有的控件;将适配器对象中Tab标签的文本内容填充入所述控件,完成对TabLayout中Tab标签的文本内容的动态更新。6.如权利要求1-5任...

【专利技术属性】
技术研发人员:刘一琛张文明陈少杰
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北,42

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

1