HarmonyosTabList配合Fraction实现顶部切换效果我会更新文章给大家。我不知道会持续多久。我昨天发表了一篇关于分数的文章。基于基本的使用和生命周期,今天想配合鸿蒙提供的顶部切换控件tablist,实现切换顶部tab,再切换下方多个fraction的效果。因此,事不宜迟,让我们开始吧。效果图:具体实现:确定tablist布局我们在垂直线性布局上面写了一个tablist然后在下面写了一个StackLayout来加载我们的多分数java代码逻辑顶部标签数据privateString[]str={"Follow","Recommend","Hotspot","QuestionsandAnswers"};初始化选项卡并添加顶部标签文本privatevoidinitview(){TabListtabList=(TabList)findComponentById(ResourceTable.Id_tab_list);if(tabList!=null){for(inti=0;ijava逻辑代码包com.example.tablist.fraction;importcom.example.tablist.ResourceTable;importcom.example.tablist.bean.PositionInfo;importcom.example.tablist.config.Api;importcom.example.tablist.provider.PositionProvider;importcom.google.gson.Gson;importohos.aafwk.ability.fraction.Fraction;importohos.aafwk.content.Intent;importohos.agp.components.Component;importohos.agp.components.ComponentContainer;importohos.agp.components.LayoutScatter;importohos.agp。components.ListContainer;importjava.util.List;/*****创建者:xuqing*创建2021年2月28日17:24:03*类说明:关注模块**/publicclassAttentionFractionextendsFraction{privatePositionProviderpositionProvider;privateListContainerComponentlistContainer;@Overrideprotected(LayoutScatterscatter,ComponentContainercontainer,Intentintent){Componentcomponent=scatter.parse(ResourceTable.Layout_fraction_attention,container,false);returncomponent;}protectedvoidonStart(Intentintent){super.onStart(intent);listContainer=(ListContainer)getFractionAbility().findComponentById(ResourceTable.Id_jop_page_list);getPostition();}publicvoidgetPostition(){Gsongson=newGson();PositionInfopositionInfo=gson.fromJson(Api.getPositioninfo(),PositionInfo.class);Listlist=positionInfo.getData();positionProvider=newPositionProvider(list,getFractionAbility());listContainer.setItemProvider(positionProvider);}}几个fraction其实是比较简单的加载本地死数据显示在listContainer控件上,因为其他几个分数的逻辑都差不多,这里就不一一展开了。感兴趣的同学可以下载完整代码查看。鸿蒙通过TabList和Fraction完成了这个,达到了顶部切换的效果。最后总结:鸿蒙提供了一个比较好用的tablist组件我们只需要一个简单的基础就可以切换toptab。然后我们将fraction绑定到我们的Ability但我们的Ability需要继承FractionAbility。这样我们就可以完成分数和能力的绑定了。我们通过tablist的回调方法调用我们替换小数的方法来实现点击最上面的tablist切换时,下面的小数也会一起切换。整个代码逻辑比较简单,和上一篇的底部开关类似。如果大家对tablist和fraction更多的联动效果感兴趣,可以私下研究。限于篇幅,我这里就不展开了。最后希望我的文章能帮助大家解决问题,以后我会贡献更多好用的代码分享给大家。更多信息请访问:Harmonyos.51cto.com,与华为官方合作打造的鸿蒙技术社区