Repository navigation
2.2.0 Dev 6:底栏指示器质感重做
Pre-release
Pre-release
按真机反馈重做指示器质感
对比 REAREye 原版效果,逐项修正了三处参数错误。
1. 指示器不再像白色奶块(最关键)
之前把静止态表面写成 30% 主色固定填充 + 固定高光/阴影,结果是一块不透明白罩,把底栏内容全盖住了。
REAREye 的真实做法:静止态只是 10% 黑/白淡罩,而且随按下淡出、把位置让给折射效果:
- 静止:10% 淡罩,无折射、无描边、无投影 → 透明玻璃罩住内容
- 按下:淡罩淡出,lens 折射 + 高光 + 投影 + 内阴影依次淡入
2. 胶囊盖满整个按钮,点击时变宽并溢出
- 水平内缩 5dp → 2dp,胶囊覆盖满整个 tab 槽(之前盖不全)
- 底栏高度 52dp → 56dp,垂直内缩独立为 5dp
- 按下放大 1.12 → 1.28:静止 46dp → 按下 59dp,超出底栏上下约 1.5dp
3. 滑动不再一顿一顿
两个原因都修了:
- 竞态:点一次 tab 会连走两条路径(手势结束的
release()与animateToValue内的release()),两个release抢同一动画通道,先到的会在滑移途中就把胶囊缩回去。加了 press 世代守卫,新 press 会让旧 release 的回缩作废。 - 弹簧太快:位置弹簧刚度 1000(约 200ms 到位),"按下变大"只有两三帧看不见。改为刚度 420、阻尼比 0.82,行程拉长到约 350ms 且尾段有轻微回弹,去掉了机械匀速的死板感。
安装:下载 APK 覆盖安装(同签名)。
如果还有偏差,最可能是这三个参数,请告诉我具体感受我继续调:
- 按下放大倍数(现 1.28)
- 滑动时长(现约 350ms,刚度 420)
- 静止态淡罩浓度(现 10%)