Repository navigation
v1.0.14 · 滑动动作自动回弹
1.0.13 以来的改动:
-
修复「下载页左右滑动没有结束反馈」:
ListItem.swipeAction的onAction(拖过动作区松手)触发后,
框架把行停到屏外就返回了,不会自动复位 —— 只有「另一行开始滑动 / 列表滚动」才顺带收回。
上游 AntennaPod 用的是ItemTouchHelper,松手后框架必定复位,所以移植时漏了这段;
正确做法是显式调用ListScroller.closeAllSwipeActions()(官方 FAQ「如何将 ListItem 的 swipeAction
滑动效果恢复至未滑动」给的正是这个 API,@since 11)。
下载页此前根本没有ListScroller,而它默认的右滑动作是「加入队列」(执行后行仍留在「已完成下载」
列表里),于是行一直停在滑出状态、屏幕上只剩一块「加入队列」色块 —— 只能去队列页才确认已经加入。
现在 5 个挂了划出项的页面都在runSwipeAction入口先收回:下载页 / 首页(看新内容 + 管理下载
两个区块共用一个List)/ 订阅详情页 / 收件箱 / 队列页(队列页原先只覆盖「移出队列」「开始下载」
两个动作,标记已播、收藏、分享、置顶、置底同样会僵住)。 -
复验(模拟器 API 26,旧构建 vs 新构建对照,同一台机、同一份数据,右滑位移 900px > 128vp 阈值):
旧构建右滑「加入队列」→ 行内标题从[[350,426][962,558]]整行移出屏外、「加入队列」停在
[[969,508][1124,553]]不动,队列 11 集(滚到底才看到该集已加入);
新构建同样右滑 → 行标题原样回到[[350,760][962,892]]、布局里不再出现动作区,
行内立刻出现队列角标,队列 11 → 12 集。
详见提交 4d404ed(修复)与 c7da41c(版本号)。
附件为 未签名 release HAP(versionName 1.0.14 / versionCode 1000014,包内 buildMode=release),
真机安装前需自行签名。