哆啦A梦小短腿

Compose 键盘与面板切换时,ActionBar 如何做到零抖动

页面底部有一条固定 48dp 高的操作栏(ActionBar)。点击「字体」按钮时,需要在软键盘和字体样式面板之间来回切换。朴素实现是「先收键盘,等收完再展开面板」——结果 ActionBar 会先跟着键盘掉到屏幕底部,再被面板顶回来,切换过程明显上下跳动。 目标效果是切换全程 ActionBar 在屏幕上的绝对位置纹丝不动,键盘和面板在它下方无缝互换,类似 iOS 邮件客户端的观感。本文...

彻底搞懂 Android 事件分发与拦截机制(含 Compose)

一句话概括:Android 的触摸事件从上往下「派发」,每一层容器都可以选择「自己截胡」还是「继续往下发」,子控件处理不了还能「退回」给上层。 这套机制就是事件分发与拦截。它是自定义 View、解决滑动冲突的地基,也是面试必考题。本文从一个比喻讲起,把三个核心方法、传递规则、源码脉络一次讲透,最后补上 Jetpack Compose 里对应的实现原理。 先用一个比喻建立直觉 把一次触摸想...

Android 与 Web 的 JS 交互原理与 JsBridge 定制开发

混合开发(Hybrid)里绕不开一个问题:运行在 WebView 里的网页(JS)和运行在 Android 虚拟机里的原生代码(Java/Kotlin),怎么互相调用? 本文从底层原理讲起,梳理官方提供的几种交互方式,拆解 JsBridge 到底是什么、如何自己实现一个,最后给出目前推荐的两套现代方案及完整代码。 WebView 是两个世界的边界 Android 里的 WebView 内...

《凡尘问道》文字修仙小游戏产品方案

版本:V1.0 | 类型:文字模拟 + 轻策略 + Roguelike 修仙 | 引擎:Cocos Creator(2D) 定位:个人开发者产品,无内购,广告激励变现,长线内容迭代 一、产品概述 1.1 产品定位 《凡尘问道》是一款以中国修仙文化为背景的文字驱动型模拟养成游戏。玩家扮演一名资质平平的凡人,从引气入体开始,历经练气、筑基、金丹直至飞升,在数百年的修行岁月中做出无数抉...