Android详情页结合ScrollView完成Title颜色渐变效果

啊啊啊,我又来更新了。

哈哈哈,分享最近有趣小点。

最近在做详情页滑动渐变显示与淡入淡出效果,我也是费尽脑筋查了又查,搜了又搜。

最后还是用最原生的方式实现了,多了不说少了不唠,仔细阅读以下文字。

note:接下来这个方法是获取view的原始有颜色,通过RGB计算将色值一点点调透明度。

private void setDetailTitleColor(int scrollY) {
    if (mDetailTitle == null) {
      return;
    }
    if (scrollY == 0) {
      mDetailTitle.setTextColor(Colo.White);
    } else {
      int color = mDetailTitle.getTextColors().getDefaultColor();
      int r = Color.red(color);
      int g = Color.green(color);
      int b = Color.blue(color);
      int changeToColor = Color.argb((255 * (scrollY - 1)), r, g, b);
      mDetailTitle.setTextColor(changeToColor);
    }
 }

附赠:渐渐隐藏和渐渐显示的动画

  public static void fadeInVisible(@NonNull View view, float startAlpha, float endAlpha) {
    if (view.getVisibility() == View.VISIBLE) {
      return;
    }
    view.setVisibility(View.VISIBLE);
    Animation animation = new AlphaAnimation(startAlpha, endAlpha);
    animation.setDuration(500);
    view.startAnimation(animation);
  }
  public static void fadeOutGone(@NonNull View view, float startAlpha, float endAlpha) {
    if (view.getVisibility() == View.GONE) {
      return;
    }
    view.setVisibility(View.GONE);
    Animation animation = new AlphaAnimation(startAlpha, endAlpha);
    animation.setDuration(500);
    view.startAnimation(animation);
  }

调用方式:

  //渐渐显示
  fadeInVisible(mDetailTitle, 0f, 1f);
  //渐渐隐藏
  fadeOutGone(mDetailTitle, 1f, 0f);

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值