掘金 Android 导航改进过程

掘金 2.9 新版已上线,对 Tab bar 做了比较大的调整。我们先来了解一下掘金,这是一款面向程序员、设计师、产品经理的 App,在掘金每天都可以发现优质的文章。为了保证文章质量,每一位分享者都经过精心挑选,他们来自 BAT 等公司。

本次版本迭代耗时 3 周(1周设计,1周开发,1周调试)

这里主要分享首页 Tab bar 的整合过程。在分享前,我们来回顾一下掘金 1.0 ~ 2.8 的首页变化。

每次的版本迭代,我们对首页都有调整,但改动都不大。这个版本会稍微大一些。

这一次主要为了解决首页的信息呈现,以及让不同人群在首页能快速获取感兴趣的内容。

作为一个专业性较强的应用,用户打开 App 想要看什么文章,用户是很明确的,这不同于微信朋友圈。比如一个前端开发人员,一打开 App 就应该看到前端的分类。

如何更快速的看到关注分类,并快速刷完相关文章,是本次迭代的目标。

作为一款内容为主的 App,所有设计都是为了服务内容。1.0 到 2.0 版本是一个最基础的分类浏览。2.3 加入了标签的功能,用户可以通过关注感兴趣的标签,在首页展示呈现相关文章,这样就过滤了其他文章。2.4 有了人与人之间的关注功能,评论逐渐开始多起来,如果你看到一篇好文章,你可以关注分享者,你就不会错过他分享的文章了,也可以在动态里看到他的更多行为。2.8
有了热门推荐,是基于用户关注的标签来推荐的。每天打开都能看到被其他用户收藏最多的文章,你将不会错过被用户再次筛选出来的好文章。

当文章量逐渐多起来后,那些关注更多标签的用户,浏览文章的效率会降低。这是一个简单的判断,但还需要去验证。我们做了小范围的用户调研后发现:

用户不仅喜欢关注一堆标签,同时也会通过分类去浏览文章

比如我是一个设计师,同时我想学前端,我每天不仅想刷一下我关注的标签,还会刷设计和前端的文章。

如何在浏览区域不变的情况下,更好的呈现分类以便更直观的切换,这就是 2.9 需要去解决的。

上图红色框是浏览区域,现在我们焦点放到整个顶部,了解一下顶部各个入口的作用与重要程度及使用频率:

侧边栏的问题就是隐藏太深,使用起来并不便捷。虽然手机屏幕越来越大,也不能随便浪费空间,然而这里顶部一大半空间是被浪费的。通知和动态是可以合并的,搜索在这个阶段使用频率并不高。

于是我们开始进行重组,将相关性较强的入口合并,个人相关信息提出来,搜索和动态,分别放入发现和通知。将六个入口整合为四个:

调整后的结果,节省了更多的空间,可以为二级 Tab 预留好位置:

以下为加入二级 Tab 的整体效果,当用户滑动到首页最后一个 Tab 时,再次滑动将会进入发现页:

最近 Google Photos 在 Google+ 后,也开始用上 Bottom Navigation 了。不过现在我确实还没有准备好接受底部导航。Android 底部 Navbar 本身就有3个按钮了,再加上4个,一共7个。并且新版 Google Photos 评价不太好,而且使用底部后,浏览空间又会被占用一些。

对此你是否有更好想法,欢迎来掘金一起探讨,掘金 2.9 版现已上线,欢迎体验。

时间: 2024-08-29 02:44:25

掘金 Android 导航改进过程的相关文章

Android 导航条效果实现(六) TabLayout+ViewPager+Fragment

TabLayout 一.继承结构 public class TabLayout extends HorizontalScrollView java.lang.Object ? android.view.View ? android.view.ViewGroup ? android.widget.FrameLayout ? android.widget.HorizontalScrollView ? android.support.design.widget.TabLayout 二.TabLayou

Android APP 调试过程中遇到的问题。

调试过过程中APP安装完启动后有的时候会异常退出,报这个错误.有的时候可以直接启动.查找不到原因.网上说把commit方法替换成commitAllowingStateLoss() 也无效. Android APP 调试过程中遇到的问题. >> android 这个答案描述的挺清楚的:http://www.goodpm.net/postreply/android/1010000007192169/AndroidAPP调试过程中遇到的问题.html

Android UI 绘制过程浅析(五)自定义View

前言 这已经是Android UI 绘制过程浅析系列文章的第五篇了,不出意外的话也是最后一篇.再次声明一下,这一系列文章,是我在拜读了csdn大牛郭霖的博客文章<带你一步步深入了解View>后进行的实践. 前面依次了解了inflate的过程,以及绘制View的三个步骤:measure, layout, draw.这一次来亲身实践一下,通过自定义View来加深对这几个过程的理解. 自定义View的分类 根据实现方式,自定义View可以分为以下3种类型. 自绘控件.View的绘制代码(onDraw

【转】android程序编译过程

现在很多人想对Android工程的编译和打包进行自动化,比如建立每日构建系统.自动生成发布文件等等.这些都需要我们对Android工程的编译和打包有一个深入的理解,至少要知道它的每一步都做了什么,需要什么环境和工具,输入和输出是什么.那么我们就来挖掘一下Android的编译过程中的细节. 首先,我们假定你的系统(什么系统都行,不限于Linux还是Windows系统,当然,我在这里默认使用Linux系统来举例子,但在 Windows中几乎没有什么差别)已经安装了JDK和Android SDK.再假

Android ListView滑动过程中图片显示重复错乱闪烁问题解决

转自:http://www.oschina.net/question/221817_121051 主要分析Android ListView滚动过程中图片显示重复.错乱.闪烁的原因及解决方法,顺带提及ListView的缓存机制.1.原因分析ListView item缓存机制:为了使得性能更优,ListView会缓存行item(某行对应的View).ListView通过adapter的getView函数获得每行的item.滑动过程中, a. 如果某行item已经滑出屏幕,若该item不在缓存内,则p

Android Studio 调试过程中快捷查看断点处变量值(Ctrl+Shift+I无效)?

当你在做Keymap到Eclipse后,在debug过程中,在Eclipse中我们很喜欢用Ctrl+Shift+I去查看一个运算或者调用的结果,这样用起来很方便.但是keymap到Eclipse后,你会发现这个快捷键不能使了.啥原因呢,原因我们一个个排除: 1.是否快捷键映射失败, 2.映射成功了,你看了快捷键也发现是正常的,那就再查看是否快捷键冲突. 3.如何是快捷键冲突,那解决快捷键冲突,正常来说解决了冲突后,快捷键是能正常使用的,但是你会发现即使你解决了冲突,Ctrl+Shift+I还是不

Android应用构建过程解析

要得心应手地进行Android应用开发需要我们对Android工程的编译和打包有一个比较深入的理解,例如知道它的每一步都做了什么,需要什么环境和工具,输入和输出是什么,等等. 在前文<命令行下Android应用开发>中我们已经知道如何创建一个Android工程和编译运行可调试版本的应用程序.本文将介绍Android工程的整个编译过程. 首先来分析Ant如何将Android工程编译打包成APK文件 执行ant debug命令时ant 脚本build.xml各target之间的依赖关系图 执行an

Android的init过程详解(一) 转

本文使用的软件版本 Android:4.2.2 Linux内核:3.1.10 本文及后续几篇文章将对Android的初始化(init)过程进行详细地.剥丝抽茧式地分析,并且在其中穿插了大量的知识,希望对读者了解Android的启动过程又所帮助.本章主要介绍了与硬件相关初始化文件名的确定以及属性服务的原理和实现. Android本质上就是一个基于Linux内核的操作系统.与Ubuntu Linux.Fedora Linux类似.只是Android在应用层专门为移动设备添加了一些特有的支持.既然An

Android Studio使用过程中常见问题及解决方案

熟悉Android的童鞋应该对Android Studio都不陌生.Android编程有两个常用的开发环境,分别是Android Studio和Eclipse,之前使用比较多的是Eclipse,而现在呢,由于Android Studio的优越性,越来越多的人转而使用它了. 随着Android Studio使用人数的增加,使用过程中的问题也日益凸显,本文小编就整理了一些Windows系统下使用Android Studio的常见问题及解决方案,大家可以围观围观,遇到类似问题,不妨可以试试小编下面分享