由于需要,希望在小程序里面加一个TabBar,这种东西本身小程序就自己支持的,很简单的引用之后就可以用了。可是安卓手机上根本就不好看啊…,字很小,icon很大,icon和字的间距也很小,而且像这些字体大小,间距什么的都是不可调的,这就很可能导致和小程序本身的风格不一致了。

此次系统环境:
基础库 2.7.0

下面是尝试过的实现方式。

  1. 原生TabBar。就是某些手机上不好看。
  2. 自己实现的TabBar。所有页面作为组件加载,优点:可以实现tab页不用每次切换都重新加载,缺点:一个是性能问题,再一个是改动太大;在页面下方加悬浮元素,唯一的问题就是每次切换都需要重新加载页面,失去了tab本身的效果和意义。
  3. 原生TabBar+自己实现的TabBar。通过自己实现的【负责UI】+原生的【负责功能】组合实现(官方有提供hideTabBar接口隐藏TabBar)。问题是:hideTabBar只能在tab页面才能生效;而且就算在页面一加载就开始调用,还是会在不同的手机出现不同程度的一段时间的显示,很小的几率才可以在整个过程中看不见TabBar的情况下就隐藏。

总结:还是用回官方的TabBar吧,放弃了样式上的要求,功能上至少没有问题了…

Q.E.D.