前段时间UI同学拿着知乎热榜小程序来问我,说现在小程序怎么这么牛皮了,居然可以把搜索栏放在顶部标题栏上面去了,然后质问我怎么不告诉她这个功能,因为她说要是早发现可以这样,她的设计就可以有很多方便的地方了。 我有种不好的预感,接下来刚上线不久的项目可以要大改 - -!
这是知乎热榜小程序,
其实这并不是把搜索栏放在了顶部标题栏里面,而是把小程序把设置为全屏模式,只保留右上角的胶囊,然后顶部标题栏是自己写的模块定位上去的。 设置全屏也很简单,只需要在json文件中设置 navigationStyle:custom 即可。 全局和单个页面都可以设置。
这里面最大问题在于如何确定自定义标题栏的位置。
目前的话有两种方法,
一,用屏幕的高度计算
上面是我用我有限的PS技术标注的一个图。。 可以明显的看出, 想要知道标题栏的高度,可以使用 屏幕高度-窗口高度-信号栏高度,即:
wx.getSystemInfo({
success