知乎android客户端drawer布局探究

最近我的个人项目react-online-news用到drawer布局。
https://github.com/xiaoshenke/React-Online-News
欢迎star fork。
在drawer的navigation部分设计界面的时候参考了知乎。
至于实现部分,我准备在点击navigation的item的时候,弹出对应activity。
知乎android客户端drawer布局探究_第1张图片
但是当我仔细观察知乎的这几个页面时。
知乎android客户端drawer布局探究_第2张图片
知乎android客户端drawer布局探究_第3张图片
知乎android客户端drawer布局探究_第4张图片
让我不得不怀疑知乎是不是共用了drawer。
打开android studio的ddms hierarchy view(测试机型小米4。
“首页”抓到的hierarchy。
知乎android客户端drawer布局探究_第5张图片
“发现”页面抓到的hierarchy。
知乎android客户端drawer布局探究_第6张图片
可以看到id的number是一样的。此时我还不敢相信。
于是我用android studio的activity manager state抓取activity。
我抓到的“设置”页面。
可以看到这里有两个activity。
知乎android客户端drawer布局探究_第7张图片
而我抓到的“首页”和“发现”页面都长这样。
知乎android客户端drawer布局探究_第8张图片
都只有一个mainActivity。
因此可以确定”首页“ ”发现“都是公用一个activity 且共用了drawerlayout。
当切换页面时,大概使用了类似removeDrawerContentView addDrawerContentView(view)卸载了前一个页面的ui 然后加载新的ui。
或者是使用了fragment进行界面管理。

你可能感兴趣的:(知乎android客户端drawer布局探究)