Android仿京东搜索框渐变效果

 更新时间:2019年06月15日 14:22:58   作者:AND_Devil  
这篇文章主要为大家详细介绍了Android仿京东搜索框渐变效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

在许多APP中,有的搜索框是一直固定的,有的呢,附加了很多的效果,就比如京东

好吧,谁让京东那么厉害呢,不说了,开始高仿!

原理:就是自定义scrollview实现对滑动高度的监听而已,如此实现对搜索框的渐变

先贴上我的自定义scrollview

//自定义ScrollView
public class CustomView extends ScrollView {

 public interface ScrollViewListener {
 void onScrollChanged(CustomView customView, int x, int y, int oldx, int oldy);
 }

 private ScrollViewListener scrollViewListener = null;

 public CustomView(Context context) {
 super(context);
 }

 public CustomView(Context context, AttributeSet attrs,
   int defStyle) {
 super(context, attrs, defStyle);
 }

 public CustomView(Context context, AttributeSet attrs) {
 super(context, attrs);
 }

 public void setScrollViewListener(ScrollViewListener scrollViewListener) {
 this.scrollViewListener = scrollViewListener;
 }

 @Override
 protected void onScrollChanged(int x, int y, int oldx, int oldy) {
 super.onScrollChanged(x, y, oldx, oldy);
 if (scrollViewListener != null) {
  scrollViewListener.onScrollChanged(this, x, y, oldx, oldy);
 }
 }
}

好了,接下来就直接在逻辑代码中调用就行了!

 @Override
 public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
 super.onViewCreated(view, savedInstanceState);
 //搜索框在布局最上面
 line.bringToFront();
 mScrollview.setScrollViewListener(new CustomView.ScrollViewListener() {
  @Override
  public void onScrollChanged(CustomView customView, int x, int y, int oldx, int oldy) {
  if (y <= 0) {
   line.setBackgroundColor(Color.argb((int) 0, 227, 29, 26));//AGB由相关工具获得,或者美工提供
  } else if (y > 0 && y <= imageHeight) {
   //获取ScrollView向下滑动图片消失的比例
   float scale = (float) y / imageHeight;
   //更加这个比例,让标题颜色由浅入深
   float alpha = (255 * scale);
   // 只是layout背景透明
   line.setBackgroundColor(Color.argb((int) alpha, 255, 255, 255));
  }
  }
 });

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Android编程之数据库Sql编程实例分析

    Android编程之数据库Sql编程实例分析

    这篇文章主要介绍了Android编程之数据库Sql编程,实例分析了Android操作Sqlite数据库的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • Android9.0 静默安装源码的实现

    Android9.0 静默安装源码的实现

    这篇文章主要介绍了Android9.0 静默安装源码的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • 微信小程序首页数据初始化失败的解决方法

    微信小程序首页数据初始化失败的解决方法

    这篇文章主要介绍了微信小程序首页数据初始化失败的解决方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-01-01
  • Android EditText实现输入表情

    Android EditText实现输入表情

    editText是TextView的子类,TextView能用的工具EditText都能用,接下来通过实例代码给大家分享Android EditText实现输入表情功能,感兴趣的朋友一起看看吧
    2017-08-08
  • Android 应用适配 Android 7.0 权限要求详解

    Android 应用适配 Android 7.0 权限要求详解

    今天小编就为大家分享一篇Android 应用适配 Android 7.0 权限要求详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-08-08
  • Android 读取txt,按行读取的实例讲解

    Android 读取txt,按行读取的实例讲解

    今天小编就为大家分享一篇Android 读取txt,按行读取的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Android仿一号店货物详情轮播图动画效果

    Android仿一号店货物详情轮播图动画效果

    这篇文章主要为大家详细介绍了Android-仿一号店货物详情轮播图动画效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • 基于Flutter实现多边形和多角星组件

    基于Flutter实现多边形和多角星组件

    开发中,免不了会用到多边形、多角星等图案,比较常用的多边形比如雷达图、多角星比如评价星级的五角星等,本文章就使用Flutter绘制封装一个这样的组件,需要的可以参考一下
    2022-05-05
  • 为Android添加一门新语言的解决办法

    为Android添加一门新语言的解决办法

    本篇文章是对为Android添加一门新语言的解决方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • Android UI控件之Gallery实现拖动式图片浏览效果

    Android UI控件之Gallery实现拖动式图片浏览效果

    这篇文章主要为大家详细介绍了Android UI控件之Gallery实现拖动式图片浏览效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12

最新评论