教你高仿天猫搜索界面UI

       淘宝,天猫,大厂出品APP确实在很多地方体验非常棒,所以众多产品和UI设计争先模仿,OK前几天一个朋友正好有这样的需求就在问我该怎么做,给人嘴上说了一些思路但是一两句说不明白,思索片刻觉得写个demo,以一篇文章记录我们开发的皮尺生涯.....

      1.分析天猫搜索

     我们先看下Android版本天猫搜索的UI图

天猫 Android版本搜索

      头部搜索部分,在下面瀑布流的view滑动的时候上滑动一段距离的时候隐藏,下滑的的时候显示。同时右下角的“喵小秘”和“顶部”的上下移动是界面刚渲染的时候都显示,当瀑布流的view滑动喵小秘隐藏的时候,“顶部”隐藏,滑动到头部的时候又显示。OK就是这样的一个UI了,至于瀑布流图片的伸缩,需要的朋友可以看我的上一篇文章的介绍。链接地址 http://www.jianshu.com/p/89f22b22c75b

     现在开始我们先搭建基础的界面和弄数据出来,这个就不详细描述了,大家自己搞一些数据就好了。现在让我们先从xml开始设计,以下是我的demo中的xml

仿天猫搜索xml

      好了,开始界面编写,有了xml,我们的界面架子就出来了,朋友们可以看出来,我的想法,是让瀑布流view和头部在初始化的时候,让瀑布流view下移动到头部搜索布局之下,这样的话就不用写恶心的header了。个人还是不喜欢在瀑布流头部加上那么多东西,无奈有些时候不是我们开发能左右产品的...说多了说多了,开始正题。

     1. 首先让我们的界面在手势滑动的时候监控距离上下滑动,滑动到一定距离的时候可以让view执行我们的上下移动。so,用到这个啦,getScaledTouchSlop表示一个距离,代表滑动的时候,手势的移动要大于这个距离才会开始移动我们的控件。如果小于这个距离就不会触发移动控件。

mTouchSlopDistance= ViewConfiguration.get(this).getScaledTouchSlop();

    2.数据渲染和简单的界面实例化就不细说了,现在我们考虑一下一开始进入的时候,界面上瀑布流移动一段距离,这个距离就是头部searchView的高度,这里呢就用ObjectAnimator属性动画,让属性动画作用在一个对象上,并且明确的指定我们要更改的属性,执行我们想要的操作。

搜索view和瀑布流移动动画

可以很清楚的看出来我的意图吧,在我们监听AbsListView上下滑动的时候标记一个变量控制头部和AbsListView的移动动画,用最简单的方式,完成我们的需求,是我最喜欢的,少写代码什么的是最棒的。做一只聪明的懒程序猿

有了移动的动画,那么像我们上面所说的现在监听一下手势上下的滑动,滑动距离大于我们所写的最小距离的时候就执行上面的方法。

监听onTouch手势滑动调用动画

好了,到这里我们的这个demo就差不多了,上下滑动的时候当滑动的距离大于mTouchSlopDistance=10/2的时候就执行我们相应的动画,当然这个距离可以随意设置。哦,对了,我们还要搞一个喵小咪和回到顶部的东西。仔细看了下天猫的操作和动画,分析一下第一次进入的时候,没有显示顶部,在一屏幕左右的时候不显示顶部,超过一屏幕的时候手势往上,屏幕内容往上滚动显示顶部,小于一屏幕的时候隐藏顶部。OK,那我就来做一下这个。

瀑布流滚动控制显示顶部动画

可以看出来我的想法是当滚动的距离小于1000的时候,并且在可以滚动,没有显示的时候调用动画方法,移动底部的两个按钮的布局。这个isCanAnima变量我用来表示动画执行完了,可以再次执行动画。isShow这个变量表示底部的两个按钮中顶部按钮的显示情况。

底部按钮移动动画

方法很简单,仅供大家参考,这个demo中的写法,如果在项目中的话写的还是希望大家更严谨一些好。好了,在我们一开始进入到这个界面的时候,我们应该执行以下这个layoutBottomAnimator的方法,让顶部初始化的时候不显示,同时调用showHideTitleBar这个我们头部移动的方法,让瀑布流移动到头部收索框的下面,所以在onCreate。里面调用一下我们的方法就好。

showHideTitleBar(true);

layoutBottomAnimator(true);

      对咯还有一个筛选的侧边栏view,我就随便写了一下用的是PopupWindow,重新定义一下出入的动画就可以了,就不上代码了。好了到这里就差不多结束了,现在让我们看一下实际效果吧。

实际效果图


感谢能看到这里的朋友,有段时间没有更新文章,一是工作比较忙,二是自己的事情比较多。不过还是会抽出时间坚持写些文章记录开发中的点点滴滴。喜欢的朋友点个赞,打赏什么的就随意了,一分也是爱❤️。。。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,723评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,485评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,998评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,323评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,355评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,079评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,389评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,019评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,519评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,971评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,100评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,738评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,293评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,289评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,517评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,547评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,834评论 2 345

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,516评论 25 707
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,029评论 4 62
  • 1 企业能量模型 企业能量模型的概念,以及其中的产品、价格、营销、渠道四大要素。还记得吗?经营企业,就像是推巨石上...
    狮子爸爸阅读 209评论 0 1
  • 即上一篇搭建好了一主一从一仲裁模式之后,怎样确认复制集是否同步? 登录主节点插入两条记录: use lenovod...
    Uzero阅读 232评论 0 0
  • 这篇文章主要是收集在开发中碰到的一个问题,善待自己,共同进步.持续更新. bug1: http://blog.cs...
    青葱烈马阅读 700评论 0 0