Repository navigation
HyperPGuard 1.7.0
感谢您使用 HyperPGuard。
这一版把单页长列表拆成三页,底部换成悬浮玻璃导航栏,支持点底栏、拖底栏、左右滑页面三种切页方式。
界面
- 底部三个入口:主页、组件拦截、关于;「全部启用 / 全部停用 / 全部重启」移到组件拦截页顶端
- 底栏为 64dp 悬浮圆角容器,左右各 26dp 内缩:40% 半透明底 + 下层背景模糊 + 上下渐变高光描边,浅色 / 深色两套配色
- 指示器是一枚玻璃胶囊:用
BitmapShader取底栏模糊图对应区域,再叠 10% 黑(深色为 10% 白)与渐变描边 - 图标为 Canvas 自绘:房子(主页)、拼图块(组件拦截)、圆圈感叹号(关于),选中态在实心与描边之间切换
- 关于页去掉卡片内多余的「关于」小标题,免责声明入口保留;「版本」行与其余行左右对齐
交互
- 三种切页方式共用同一条弹簧曲线:点底栏、在底栏上拖动、左右滑动页面
- 胶囊位置的弹簧与 KernelSU 的
DampedDragAnimation一致(spring 刚度 1000、临界阻尼);页面吸附用 miuix 的PagerNavigationSpringSpec(stiffness 322.2、dampingRatio 0.9、阈值 0.5px) - 滑动页面过半即切换底栏选中态;点底栏切页的动画期间不回改选中态,胶囊与图标不会来回跳
- 按住底栏时胶囊放大 1.07 倍并淡出,手指未松开前保持放大,松手且胶囊到位后才缩回
- 拖动底栏时胶囊跟手,快速拖动有横向拉伸,松手按速度或距离吸附到最近一页
- 三页各自保留滚动位置;深浅色切换后停在当前页
说明
- 开关、规则、作用域联动、弹窗逻辑均未改动,只是重新分页
- 「清理日志缓冲」的说明改为准确表述:只清 logcat 文本缓冲,不涉及模块配置与行为库
- 底栏与图标均为纯 Canvas 绘制,不引入 drawable 资源与第三方运行时依赖
- 胶囊的放大倍率取 1.07,上限由「胶囊宽 = 满格、左右各只剩 4dp 内边」算出,任何屏宽下都不会越出底栏
- 界面参数参考了 KernelSU 与 compose-miuix-ui / miuix 的公开实现,逐项对照后重写,未复制源码,来源与许可见 NOTICE 与 README 的「参考来源」
全部提交:v1.6.13...v1.7.0