android搜索框点击上移动画,顶部动态伸缩搜索框的简单实现

项目上需要一个点击输入框,然后输入框拉长的需求,自己参考了别人的两个案例简单地实现了一下,作为一个新人开发来说,思路很简单,但是也是相当花时间。本人开发时间不足一年,所以写的代码可能有点烂,如有何处处理不当或者错误的地方请直说。

太年轻走了太多弯路。之后也有遇到更好的方案,但也没更新这篇文。

直接使用ObjectAnimator对view进行控制,不需要啰里啰唆这么多代码。

ObjectAnimator.ofInt(view, "width", view.getWidth(), maxValue).setDuration(duration).start();

与之前不同的是少了通过view当前的宽度在目标宽度的比例乘以默认持续时长duration得到需要的时长。

不加的原因有两个:1、动画时间较短,这部分的时间差基本很难感受到差别。2、增加时间计算的话又会啰里啰唆加很多代码。所以在投入较多收益不高的情况下选择性价比最高的方案。

已更新至Github

============================================================

以下内容过时,暂时留做记录

日常的基于百度的项目开发与实现 笑 。进入百度搜索能找到类似需求的这两片文章

第一篇排版有点乱,原谅我没怎么仔细看下去,原理应该是通过ScrollView的滚动监听然后设置搜索框的宽度,稍微仔细阅读过后发现竟然继承了ScrollView自定义了一个,这个处理方法在我觉得不太简单方便。开头的动图发现作者对动画的过度不够平滑,还有就是搜索框展开了之后都突出屏幕了,这些都是细节的问题,虽然是个demo但是看着也有点难受。

第二篇也差不多,不过在动画方面利用了系统提供的Transition提供了一个不错的效果,就算在Android 5.0以下,只要引入api 'com.android.support:design:25.3.1'就没有问题,但是我就是想自己试试,而且在看到需求的时候就已经有用属性动画的想法了,而Transition刚好是属性动画的封装,所以就尝试着自己写了一下。事实证明,还是调用现有的比较方便,不过自己写一遍也算是有点收获吧。

先上一张自己做的效果图吧,效果也还行,不过写的过程中遇到的问题挺多的。最后卡了一下是git录制原因。说好的点击展开呢,怎么又变滑动展开了??其实有留点击展开的方法啦,只不过滑动看着更有意思!

aa6cd3c6a57c

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值