Open cEvolve05 opened 3 weeks ago
引入页面显示周期的概念,指从一个页面显示开始,直到页面不再显示。目前的周期如下:
其中会等待第三步函数返回后再执行第四步,但是无法利用这点实现退出动画,因为如果第三步进行等待会导致整个主线程的阻塞。
由此,考虑将隐藏页面的行为,或者通知 ViewManager 隐藏页面的行为委托给 onHide 或是新接口执行,由对应接口使用 asyncExecute 进行非阻塞的等待操作。
ViewManager
onHide
asyncExecute
另外,当前对 onShow 的调用并不一定保证在显示页面之后,整个 ViewManager 需要进行相应的修改。
可以考虑动画是否执行作为一个可选项,有些页面切换可以用页面中元素的移动做平滑变换
需要对现有框架做较大更改 上述方案废弃
引入页面显示周期的概念,指从一个页面显示开始,直到页面不再显示。目前的周期如下:
其中会等待第三步函数返回后再执行第四步,但是无法利用这点实现退出动画,因为如果第三步进行等待会导致整个主线程的阻塞。
由此,考虑将隐藏页面的行为,或者通知
ViewManager
隐藏页面的行为委托给onHide
或是新接口执行,由对应接口使用asyncExecute
进行非阻塞的等待操作。另外,当前对 onShow 的调用并不一定保证在显示页面之后,整个
ViewManager
需要进行相应的修改。